Je porte un projet C++ sur VS2008. morceau de code a une variable déclarée dans l'instruction de boucle comme ci-dessous:Erreur VC++ C2065 dans la version de débogage
pour (! BmpMapType :: const_iterator it = bitmaps.begin(), elle = bitmaps.end(); ++ il) {
}
"il" est plus tard utilisé comme un index dans un autre pour instruction de boucle comme ci-dessous: pour (= il bitmaps.begin(), elle = bitmaps.end(); ++ it!) {
}
Il génère l'erreur c2065 dans la version de débogage avec les paramètres de projet ci-dessous où la génération de version a réussi.
J'ai défini le champ C \ C++> Pour la conformité dans For Scope Scope sur No (/ Zc: forscope-) et construit le projet avec le mode de configuration de release. Le code a été construit avec succès.
Le même code avec les mêmes paramètres ne parvient pas à générer en mode débogage. Quelqu'un peut-il m'aider à résoudre le problème?
Toute aide est appréciée.
Merci, Lakshmi
Merci. Cela fonctionne bien. Je ai une question pourquoi cela fonctionne en mode de libération sans le déclarer à nouveau comme mentionné – Lakshmi
Assurez-vous que le drapeau '/ Zc: forscope' a le même paramètre dans les deux modes Debug et Release, autant que je sais qu'il devrait soit construire ou échouer les deux construisent des configurations si ce drapeau est défini de manière cohérente. – Praetorian