class TConst
{
const int i;
int& ref;
public:
TConst(int n):i(n),ref(n){}
static void p1(){prn(i);}//error here
};
Il mio compilatore genera un errore quando tento di utilizzare un membro della classe const
in una funzione membro static
.Perché non possiamo utilizzare i membri const in funzioni membro statiche?
Perché non è consentito?
Si prega di inviare sempre l'errore completo che si ottiene. – orlp
const è ancora legato a un oggetto, non alla classe. – nullpotent
In un metodo statico non esiste un'istanza di classe quindi non ci sono membri di classe ... Per tua comodità puoi renderlo 'static const int i = 42;' se vuoi usarlo in questo modo. – AJG85