Je construis une application qui doit être compilée sous Windows et Linux. L'application est écrit en C, presque tout fonctionne, sauf le compilateur MinGW refuse ceCumum différents compilateurs
typedef struct somestruct{
...snip...
enum {NODE, REAL} type;
};
somestruct* something;
switch (something->type){
case NODE:
...stuff...;
break;
case REAL:
...otherstuff...;
break;
}
Il dit NODE et REAL ne sont pas définis, Mais si je fournir une résolution de portée
case somestruct::NODE
Cette compile avec MinGW 3.4.1, mais ne parvient pas à compiler avec gcc 4.1.2 sur Linux. Est-ce simplement un problème de compilateur qui doit être résolu avec des préprocesseurs ou existe-t-il d'autres explications?
Pouvez-vous confirmer que vous posez des questions sur C et non sur C++? –
C'est définitivement C, "quelque chose" est un pointeur. – Mitch
C n'a pas de portée de structure comme vous l'utilisez dans somestruct :: NODE. vous devez parler d'une autre langue –