CSTRINGCONVERT (MANIPULATION DES CSTRING)

cs_Lucky92 Messages postés 180 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 16 août 2012 - 23 août 2007 à 22:25
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009 - 27 août 2007 à 14:02
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43861-cstringconvert-manipulation-des-cstring

LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
27 août 2007 à 14:02
Salut,

Quelques remarques sur le nommage de tes methodes:
- ExtractInChaine: Soit tu prends des noms en Francais, soit en Anglais, mais melanger les deux, ce n'est pas tres pratique
- ConvertToChar: Ca convertie en char*, pas en char... Tu devrais trouver un autre nom, encore que comme dit Lucky92, ce n'est pas la fonction la plus utile.

Vu le titre du post, je m'attendais a des conversions vraiment utiles, comme les bstr ou autres unicode et trucs bizares.

Enfin, l'avantage de ce genre de classes, c'est que tu peux toujours rajouter de nouvelles fonctionnalitees :o)

Eric
cs_Lucky92 Messages postés 180 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 16 août 2012 2
23 août 2007 à 22:25
Bonsoir,

J'ai quelques remarques :
- tu DOIS te débarrasser de tes memory leaks ! Il y a deux voies : soit le client est en charge de l'allocation et de la désallocation, soit c'est ta classe qui s'en charge.
- la classe CString (MFC) définit l'opérateur de conversion en LPCSTR (alias const char*), ce qui me fait penser que ta méthode ConvertToChar() est un peu lourde, voire inutile.
- je ne connais pas le contexte de ton travail, mais la conversion en BYTE (unsigned char) me semble moins intéressante qu'une compatibilité avec l'unicode (wchar_t).
- je pense que tu gagnerais en portabilité si tu utilisais les classes std::string, std::ostringstream et std::istringstream.
Rejoignez-nous