CString en argument d'une méthode > LPCTSTR [MFC] - C++ - Programmation
Marsh Posté le 16-06-2003 à 11:37:12
J'te conseillerai :
Code :
|
& pour indiquer un passage par référence
const pour reproduire la "non modification" du contenu de la chaine (constance assurée également quand on fait un passage par un pointeur de type LPCTSTR)
Marsh Posté le 16-06-2003 à 11:38:34
CString :: operator LPCTSTR ( ) const; |
Code :
|
Marsh Posté le 16-06-2003 à 11:39:42
Oui en plus je viens de voir que l'erreur venait d'ailleurs
Mais alors à quoi servent LPCSTR et cie par rapport a CString classique? Question de format (unicode,...) ?
Marsh Posté le 16-06-2003 à 11:40:43
LPCSTSTR ca fait un char* a la fin (omission faite des const on va dire), CString c un objet complet.
Marsh Posté le 16-06-2003 à 11:57:00
VisualC++ a écrit : LPCSTSTR ca fait un char* a la fin (omission faite des const on va dire), CString c un objet complet. |
Mais je n'vois pas l'intéret de bosser sur un LPCTSTR, sachant qu'on peut profiter de toutes les méthodes d'une CString, et ce, sans la copier bien sur (juste en copiant se référence).
Marsh Posté le 16-06-2003 à 11:58:26
Une autre question:
Visual me crée automatiquement une classe CAboutDlg correspondant à la boîte de dialogue A Propos.
J'aimerais dans le MonAppDlg.h ajouter à la classe CMonAppDlg ça:
CAboutDlg *about;
mais ça ne compile pas parce que le .h ne sait pas ce qu'est CAboutDlg qui est définie dans MonAppDlg.cpp. Comment faire pour déclarer mon pointeur dans ma classe?
Marsh Posté le 16-06-2003 à 11:59:48
El_gringo a écrit : |
mais j ai pas dit que j ete pour le lpctstr, effectivement si il fait du MFC un CString& c bien plus pratique
Marsh Posté le 16-06-2003 à 12:00:49
ANTSite a écrit : |
fait un
Code :
|
il devrait se debrouiller a la compile
Marsh Posté le 16-06-2003 à 12:02:22
ANTSite a écrit : |
Dans le .h, avant la déclaration de ta classe CMonAppDlg, essaye de mettre
public class CAboutDlg;
Marsh Posté le 16-06-2003 à 13:07:15
nickel! merci à tous les 2!
PS: je suis le boolay de personne, si ça vous intéresse, je pense que ça serait justifié ;-)
Marsh Posté le 16-06-2003 à 11:32:37
Salut, pourquoi ce code compile mais quand l'éxécute plante?
J'ai lu dans la doc qu'il vaut mieux MaMethode(LPTCTSTR c) que MaMethode(CString c) donc c'est ce que je fait...
CString s;
comment faire pour passer en argument une CString donc? LPCTSTR?
merci
ANT