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.