IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Modification de données par pointeur


Sujet :

C++Builder

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 36
    Points : 43
    Points
    43
    Par défaut Modification de données par pointeur
    Bonjour ,
    j’essaie désespérément de modifier une chaine de caractère par rapport à un pointeur et manifestement la fonction crée une copie de la chaine et traite localement la chaine .


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
      TRzRichEdit *TextePageHtml;
    TextePageHtml->Text = FormatHtml(TextePageHtml->Text);
     
     
     
      UnicodeString __fastcall FormatHtml(UnicodeString Source) ;
    {
    return Source;
    }
    ou:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
      TRzRichEdit *TextePageHtml;
    TextePageHtml->Text = FormatHtml(&(TextePageHtml->Text));
     
     
     
      UnicodeString __fastcall FormatHtml(UnicodeString * Source) ;
    {
    return *Source;
    }
    Y à t-il une solution pour modifier directement la variable Texte ?

  2. #2
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Points : 2 187
    Points
    2 187
    Billets dans le blog
    1
    Par défaut
    Salut
    il me semble que Text soit une propriété de l'object TRzRichEdit donc accessible en interne par un get et un set
    si tu veux modifier cette propriété il faut passer par un autre object par exemple un AnsiString ou un UnicodeString
    du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    AnsiString Temp=TextePageHtml->Text;
    // ton traitement via paramètre ou valeur
    //et ensuite tu réassigne la valeur de la propriété
     
    TextePageHtml->Text= Temp;
    colt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 36
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par DjmSoftware Voir le message
    Salut
    il me semble que Text soit une propriété de l'object TRzRichEdit donc accessible en interne par un get et un set
    si tu veux modifier cette propriété il faut passer par un autre object par exemple un AnsiString ou un UnicodeString
    du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    AnsiString Temp=TextePageHtml->Text;
    // ton traitement via paramètre ou valeur
    //et ensuite tu réassigne la valeur de la propriété
     
    TextePageHtml->Text= Temp;

    C'est ce que j'ai fait , je voulais simplement éviter que le système crée la variable temp pour optimiser le temp d’exécution , pas forcement pour cet exemple mais globalement.

    colt

  4. #4
    Membre chevronné
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Points : 2 189
    Points
    2 189
    Par défaut
    Salut, pourquoi ne pas passer un pointeur vers un objet TRzRichEdit comme paramètre? Par la suite, dans la méthode tu accèdes a la propriété Text.

    Sinon, habituellement la manière classique c'est de passer une String par référence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UnicodeString __fastcall FormatHtml(const UnicodeString &ASource)
    {
        return ASource;
    }
    • Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur. - Dave Barry
    • Je n'ai pas peur des ordinateurs. J'ai peur qu'ils viennent à nous manquer. - Isaac Asimov
    • Le code source est comme une belle femme, plus on le regarde, plus on trouve des défauts. - Crayon

Discussions similaires

  1. Modification de données par appel de fonction
    Par papouuu dans le forum ASP.NET
    Réponses: 6
    Dernier message: 17/01/2011, 10h50
  2. Réponses: 5
    Dernier message: 03/09/2008, 14h19
  3. Réponses: 10
    Dernier message: 05/03/2007, 13h55
  4. modifications de données par lot
    Par pracolas dans le forum Access
    Réponses: 16
    Dernier message: 03/02/2007, 13h13
  5. [MySQL] Modification des données d'une base par les membres
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 22/03/2006, 17h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo