Bonjour,
J'essaye de déplacer un bloc #if/#else afin de le mettre dans le constructeur d'une classe, mais ça semble refusé par le compilateur.
Est-ce normal ?
Merci.
Version imprimable
Bonjour,
J'essaye de déplacer un bloc #if/#else afin de le mettre dans le constructeur d'une classe, mais ça semble refusé par le compilateur.
Est-ce normal ?
Merci.
bah c'est quoi qu'il t'indique car normallement ca devrait etre possible :)
oublie pas le #endif :)
Normalement, le préprocesseur se moque de cela.
C'est ton code dans une des branches qui ne doit pas être valide dans le constructeur...
Dans le constructeur, j'ai mis ça :
Le message d'erreur obtenu est :Code:
1
2
3
4
5
6 #ifdef _WIN32 SYSTEM_INFO siSysInfo; GetSystemInfo(&siSysInfo); numberOfCPUs = siSysInfo.dwNumberOfProcessors; #else numberOfCPUs = sysconf(_SC_NPROCESSORS_CONF);
Quand je mets le même code en tête de fichier, je n'ai pas cette erreur.Code:fatal error C1004: fin de fichier rencontrée inattendue
Désolé, j'avais lu trop vte vos réponses.
Apparemment, c'est le #endif qui était effectivement manquant. :->
Merci !
euh, j'ai dit quoi !!! :D
Code:
1
2
3
4
5
6
7
8 #ifdef _WIN32 SYSTEM_INFO siSysInfo; GetSystemInfo(&siSysInfo); numberOfCPUs = siSysInfo.dwNumberOfProcessors; #else numberOfCPUs = sysconf(_SC_NPROCESSORS_CONF); #endif
:resolu: ?