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 :

UnicodeString Borland XE2 2012 [D�butant]


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2009
    Messages
    114
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : Technicien maintenance
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Juillet 2009
    Messages : 114
    Par d�faut UnicodeString Borland XE2 2012
    bonsoir @ tous ,

    je dois migrer une veille petite application en XE2 . J'ai vu qu'on parlait plus que de UnicodeString . Je souhaiterai avoir quelques conseils avant de d�marrer ?

    G vu du Wchar_t * , Wstring , UnicodeString .
    Quelle est la diff�rence entre Wstring et UnicodeString ?

    quels sont les type � utiliser pour cela et m�me pour l'avenir ( nouvelle application ) ?

    Merci beaucoup pour v�tre aide

  2. #2
    Expert �minent
    Avatar de ShaiLeTroll
    Homme Profil pro
    D�veloppeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Seine Saint Denis (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur C++\Delphi
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par d�faut
    Comment as-tu port� de ton projet ?
    Si tu as ouvert un ancien projet et converti, les appels aux API Windows reste ANSI avec char
    Si tu as r�cr�� un projet sans modifier le mappage, par d�faut les API Windows passe en Wide avec wchar_t

    Normalement en C++Builder, on utilise le type String et Char h�rit� de Delphi, ces types ont �t� implicitement migr� de AnsiString\AnsiChar vers UnicodeString\WideChar (2 octets)

    Ne pas confondre Char et char, ce dernier lui reste sur un octet !

    Apr�s tout d�pend ton code, si tu as manipul� beaucoup de chaine en code C avec strlen, getmem, alloc ... tu risques d'avoir bcp de boulot (les bugs ne pouvant appara�tre qu'au RunTime)
    Aide via F1 - FAQ - Guide du d�veloppeur Delphi devant un probl�me - Pensez-y !
    Attention Troll M�chant !
    "Quand un homme a faim, mieux vaut lui apprendre � p�cher que de lui donner un poisson" Confucius
    Mieux vaut se taire et para�tre idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la m�diocrit� !

    L'exp�rience, c'est le nom que chacun donne � ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre confirm�
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2009
    Messages
    114
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : Technicien maintenance
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Juillet 2009
    Messages : 114
    Par d�faut
    merci ShaiLeTroll pour ta r�ponse .

    En effet j'ai voulu importer un ancien projet avec beaucoup de manip de chaines de caract�res .
    La tache ne va pas �tre simple
    G bien mapp� en Tchar Wchar__t . Et en effet c coince pas mal

    Faut il passer tous les char* en wchar_t* et les string en wstring ?

    Quelle est la diff�rence entre Wstring et UnicodeString ? le compilateur me signale une diff�rence entre les 2 ?

    @+

  4. #4
    Expert �minent
    Avatar de ShaiLeTroll
    Homme Profil pro
    D�veloppeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Seine Saint Denis (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur C++\Delphi
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par d�faut
    string et wstring sont les types C++ (strict), je ne les ai jamais utilis�, j'ignore le travail que tu devras effectuer !
    Wstring ? �a existe aussi �a ? fait attention � la casse !

    Ils sont �quivalent � AnsiString (String de D3 � 2007) et UnicodeString (String de D2009 � XE2) qui eux sont des encapsulations objet des Chaines Delphi qui ont une gestion m�moire avec compteur de r�f�rence assez particuli�re !

    Lorsque utilises la VCL, tu utilisais String ou AnsiString
    Pour le COM, c'�tait WideString qui encapsule le BSTR

    Comment fais-tu la passerelle entre std::string et String ?
    Ou alors, tu utilisais bien String avec S majuscule et dans ce cas c'est devenu implicitement UnicodeString

    Citation Envoy� par parabole33 Voir le message
    En effet j'ai voulu importer un ancien projet avec beaucoup de manip de chaines de caract�res .
    La tache ne va pas �tre simple
    Tout d�pend la fa�on de les manipuler et leur type, tu sembles confus sur les types que tu utilisais !
    �videmment en C++Builder, tout est con�u pour utiliser les types Delphi de la VCL et non les types Boost\STD\STL
    Aide via F1 - FAQ - Guide du d�veloppeur Delphi devant un probl�me - Pensez-y !
    Attention Troll M�chant !
    "Quand un homme a faim, mieux vaut lui apprendre � p�cher que de lui donner un poisson" Confucius
    Mieux vaut se taire et para�tre idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la m�diocrit� !

    L'exp�rience, c'est le nom que chacun donne � ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre confirm�
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2009
    Messages
    114
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : Technicien maintenance
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Juillet 2009
    Messages : 114
    Par d�faut
    je voulais dire la diff�rence entre wstring et UnicodeString ?

    Donc si j'utilise wchar_t * , wstring , je suis dans le vrai ???
    Et pour la VCL UnicodeString ?

    Je sais je suis long � comprendre ....

    dsl .....

  6. #6
    Expert �minent
    Avatar de ShaiLeTroll
    Homme Profil pro
    D�veloppeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Seine Saint Denis (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur C++\Delphi
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par d�faut
    Citation Envoy� par parabole33 Voir le message
    je voulais dire la diff�rence entre wstring et UnicodeString ?
    La diff�rence c'est que ce n'est pas la m�me biblioth�que
    Les deux sont Unicode, wstring c'est C++ strict, UnicodeString c'est la VCL C++Builder

    Citation Envoy� par parabole33 Voir le message
    Donc si j'utilise wchar_t * , wstring , je suis dans le vrai ???
    Et pour la VCL UnicodeString ?
    Pour ma part, j'utilise UnicodeString au plus que possible
    Comme, j'ai migr� un projet, je suis rest� ANSI pour les API, donc je conserve des AnsiString et la m�thode c_str()
    Pour les DLL externes, j'utilise aussi AnsiString.c_str(), char[] ou char*

    En C++Builder, utilise UnicodeString tout l'IDE est con�u pour cela !

    pour wchar_t[] ou wchar_t*, pour les API Windows, mais tu peux aussi utiliser c_str() de UnicodeString


    Tu utilisais quoi avant string ou String ?
    Je ne connais pas string ou wstring du C++ strict, comme je suis Delphiste, je suis habitu� au String, WideString, AnsiString et UnicodeString et toutes les fonctions RTL\VCL associ�es !
    Tout d�pend tes connaissances, � la base, tu es d�veloppeur C\C++ g�n�raliste ou alors tu n'as QUE du C++Builder ?
    Aide via F1 - FAQ - Guide du d�veloppeur Delphi devant un probl�me - Pensez-y !
    Attention Troll M�chant !
    "Quand un homme a faim, mieux vaut lui apprendre � p�cher que de lui donner un poisson" Confucius
    Mieux vaut se taire et para�tre idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la m�diocrit� !

    L'exp�rience, c'est le nom que chacun donne � ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Compatibilit� Borland C++ 6 sous Windows Server 2012 64 bits
    Par bachelre dans le forum Windows Serveur
    R�ponses: 2
    Dernier message: 11/02/2015, 14h18
  2. TSHFILEOpstruct et UnicodeString avec XE2
    Par Pasqualini dans le forum C++Builder
    R�ponses: 12
    Dernier message: 11/10/2012, 19h17
  3. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    R�ponses: 10
    Dernier message: 12/03/2006, 22h33
  4. Tutoriels et liens pour le Borland Database Engine
    Par Community Management dans le forum Paradox
    R�ponses: 0
    Dernier message: 25/03/2002, 10h23

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