PDA

Visualizza la versione completa : [C++] Programmazione oggetti con XCode ed errore "Expected unqualified-id before ..."


FrankViolence
18-03-2011, 15:11
Salve a tutti!
Ogni volta che provo a programmare in c++ a oggetti con Xcode, mi vengono segnate tutte le righe "using namespace std" che uso nei file .cpp.

L'errore riscontrato : Expected unqualified-id before 'using'

Qualcuno sa come risolvere questo problema?
Perch Xcode mi sembra molto buono ed molto scomodo dover passare a windows ogni volta che devo compilare un programma a oggetti :mem:

Grazie a chi mi sapr rispondere :)

MacApp
19-03-2011, 01:13
Originariamente inviato da FrankViolence
Salve a tutti!
Ogni volta che provo a programmare in c++ a oggetti con Xcode, mi vengono segnate tutte le righe "using namespace std" che uso nei file .cpp.

L'errore riscontrato : Expected unqualified-id before 'using'


questo, Xcode 3.2.5 (target: "Debug | x86_64"), me lo compila senza problemi:


#include <iostream>

using namespace std;
int main (int argc, const char * argv[]) {
// insert code here...
cout << "Hello, World!" << endl;
return 0;
}

prova a ricondurre ai minimi termini, ed ad esporre in modo riproducibile il tuo problema, altrimenti senza una sfera di cristallo la vedo dura..
;-)

FrankViolence
19-03-2011, 14:04
Intanto grazie per la risposta :)

Comunque i programmi che non siano progettati con le classi me li compila senza problemi e infatti mi trovo benissimo, questo errore me lo ritrovo quando inizio a lavorare con classi. Quindi ad esempio creo un main.cpp, poi un file chiamato "dipendente.h" (il file dove creo la classe chiamata dipendente, quindi con la sintassi "class dipendente{ codice }") , un file che ovviamente sar "dipendente.cpp" ecc ecc.. e in ognuno di questi file dove uso il comando "using namespace std;" trovo quell'errore in modo inspiegabile :confused:

Spero di essere stato chiaro :)

lolide
19-03-2011, 14:23
Originariamente inviato da FrankViolence
Intanto grazie per la risposta :)

Comunque i programmi che non siano progettati con le classi me li compila senza problemi e infatti mi trovo benissimo, questo errore me lo ritrovo quando inizio a lavorare con classi. Quindi ad esempio creo un main.cpp, poi un file chiamato "dipendente.h" (il file dove creo la classe chiamata dipendente, quindi con la sintassi "class dipendente{ codice }") , un file che ovviamente sar "dipendente.cpp" ecc ecc.. e in ognuno di questi file dove uso il comando "using namespace std;" trovo quell'errore in modo inspiegabile :confused:

Spero di essere stato chiaro :)

Hai provato il codice di MacApp ? Te lo compila ?
Il problema pu essere un altro comunque.
Il compilatore dice Expected unqualified-id before 'using', prima di using.
Se tu prima di using includi l'header, pu essere che hai sbagliato qualcosa nell'header.
Di solito l'errore pi commesso quello di dichiarare una classe senza mettere il ; dopo la graffa:

dipendente.h


class Dipendente {
...
};


Se postassi il codice sarebbe pi facile aiutarti.

FrankViolence
19-03-2011, 14:36
Ripeto, non questione di codice, in quanto se copiato e fatto compilare su Dev-CPP per windows funziona.
Il problema dev'essere in Xcode, non so, magari devo includere qualche libreria o non so cos'altra diavoleria, il codice corretto, o almeno, come ho detto prima su altri compilatori funziona.

Se proprio serve in caso posso postare il codice di un programma che su Dev funzia e su xcode no, ma non credo che il problema sia li.

FrankViolence
19-03-2011, 14:39
Ah comunque il codice di macApp me lo compila, quello che viene messo sempre in automatico da xcode e, come detto nei messaggi sopra, i codici non programmati con classi li compila correttamente.

lolide
19-03-2011, 14:49
Se posti il codice (del cpp e dell'header) sarebbe meglio.

Alcuni compilatori potrebbero rilevare l'errore e ignorarlo, altri no. Quindi potrebbe anche avere senso che un compilatore compila, quello di xcode no.
Secondo me un errore di sintassi.

FrankViolence
19-03-2011, 14:54
Cavolaccio, il problema era proprio il ; alla fine della classe!
E non lo capivo perch su Dev non lo segna come errore.

B grazie mille davvero! :D

Loading