Ajouter un commentaire

fredericmazue

Quote:
J'ai déjà ,il y a quelques années programmer léger en Visual C++ Version 6 (avec MFC). Je viens d'acheter Microsoft Visual Studio 2005 Standard et je me suis remis à la programmation basique en C++ .

Houlà...
A lire le reste de ton post il n'y a rien de C++ basique dedans, ni même de MFC.
Ton code c'est du C++/CLI, c'est à dire le C++ à la sauce Microsoft et .Net, pas le "vrai" C++. Et dans ce que tu montres tu n'utilises pas du tout MFC mais les classes .Net. Bref on ne peut pas dire que tu fais du C++ là.

Quote:
if ((File::GetAttributes( fich_ou_dir )) & FileAttributes::Directory == FileAttributes::Directory )

Très simple. Une parenthèse n'est pas à sa place.
Le compilateur voit: (File::GetAttributes( fich_ou_dir )) et en déduis que c'est un booléen donc il n'y a pas concordance de types avec File::Attributes, d'où le message d'erreur.
A la place essaie:
if ((File::GetAttributes( fich_ou_dir ) & FileAttributes::Directory) == FileAttributes::Directory )
:)
Quote:
Dans la documentation, on parle de pouvoir « caster » les éléments de FileSystemInfo en elements de File.... mais je ne sais pas faire.

Tu peux essayer:
FileInfo^ myFileInfo = safe_cast<FileInfo^>(objet_a_caster);

Quote:
Autre petite question banale: quelle syntaxe pour convertir un int en String^ ???

Arghh.
Je pense que ta demande est mal formulée. Tu demandes de transformer un int en un pointeur managé. A supposer que ça soit possible je voudrais décourager de faire ça.
C'est pas en int en String que tu veux avoir ?

Quote:
Elle est trés pertinente je n'en doute pas. Mais je veux découvrir et me former encore sur les MFC avant de faire la pas vers d'autres librairies. C'est vrai que j'ai un petit acquis sur les MFC que je dois approfondir.
Aussi, j'aimerai rester sur le même chemin avec l'accompagnement et les conseils ici.

en ce qui concerne MFC et Qt, k-lo a raison.
Mais je tiens encore une fois à souligner que là tu ne fais pas du C++ avec MFC à l'ancienne comme tu sembles le croire. Tu fais du C++/CLI de .Net.
Bref en un mot comme en cent, tu ne fais pas du C++.
Bien sûr si C++/CLI te convient, que tu es conscient de ce que tu fais et que ton code n'est pas destiné à être compilé ailleurs que sous Windows alors pourquoi pas.
Mais si tu parles de faire du C++, d'approfondir du C++, alors tu dois vite faire un virage à 180°.
Je me suis permis d'insister sur ce point car au tout début de ton post tu as écrit
Quote:
Visual C++ Version 6 (avec MFC). et je me suis remis à la programmation basique en C++ .

mais ce que tu montres n'est pas du C++ et je pense que tu es berné à l'insu de ton plein gré par Microsoft.
Remarque qu'il est aussi possible de faire du vrai C++ avec Visual 2005 (ouf). L'outil n'est donc pas à jeter, mais le code est à ré-écrire.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 ZZZZZ  DDD   L      SSS   DDD  
Z D D L S D D
Z D D L SSS D D
Z D D L S D D
ZZZZZ DDD LLLL SSSS DDD