PDA

Visualizza la versione completa : Aiuto c++ elementare


raenad
31-05-2017, 21:25
Salve ragazzi, mi sono approcciato da poco al linguaggio c++ e sto seguendo la guida sul sito. All'argomento enumerazioni ho messo il codice esempio sul compilatore netbeans e mi da questo errore : main.cpp: In function 'int main()':main.cpp:15:47: error: 'asse' is not a class or namespace
cout << "Enumeratore asse::x: " << (char) asse::x << endl; // x = 'x'

#include <iostream>

using std::cout;
using std::endl;

enum asse : char {x = 'x', y = 'y'};

int main()
{
cout << "Enumeratore x: " << (char) x << endl; // x = 'x'

char x = 'c';
cout << "Variabile x: " << x << endl; // x = 'c'

cout << "Enumeratore asse::x: " << (char) asse::x << endl; // x = 'x'

return 0;
}


Ho provato a smanettare un po' e l'unico modo che ho trovato per fare funzionare il programma è questo dove però ho usato operazioni che neanche conosco ancora tipo l'inserimento del namespace:

#include <iostream>

using std::cout;
using std::endl;
using namespace std;


namespace asse
{
enum asse : char {x = 'x', y = 'y'};
}
int main()
{
cout << "Enumeratore x: " << (char) asse::x << endl; // x = 'x'

char x = 'c';
cout << "Variabile x: " << x << endl; // x = 'c'

cout << "Enumeratore asse::x: " << (char) asse::x << endl; // x = 'x'

return 0;
}

La domanda è, il tipo di correzione apportata ha sistemato il problema o ha reso un valore diverso e sopratutto come si poteva risolvere più facilmente l'errore. Vi ringrazio anticipatamente per le vostre risposte, so che è una cosa molto stupida ma vorrei andare avanti piano piano cercando di non trascurare niente. Grazie.

Loading