Ho creato una classe singleton che utilizza il metodo GetInstance()
per ottenere l'indirizzo dell'istanza (puntatore). All'interno della classe ho una matrice di unsigned long int che ho creato il operator []
per esso (accesso diretto alla matrice). Come posso usare il puntatore ricevuto da GetInstance
per utilizzare lo [] operator
? Ho provato:C++ utilizzando parentesi quadre con puntatore all'istanza
class risc { // singleton
protected:
unsigned long registers[8];
static risc* _instance;
risc() {
for (int i=0;i<8;i++) {
registers[i]=0;};
}
public:
unsigned long operator [](int i) const {return registers[i];}; // get []
unsigned long & operator [](int i) {return registers[i];}; // set []
static risc* getInstance() { // constructor
if (_instance==NULL) {
_instance=new risc();
}
return _instance;
}
};
risc* Risc=getInstance();
*Risc[X]=...
Ma non funziona ... c'è un modo posso utilizzare le staffe per accedere alla matrice direttamente utilizzando il puntatore di classe?
Grazie!
Perché vuoi un puntatore? 'static risc & getInstance()' funziona altrettanto bene. – MSalters
Istruzioni ... – SagiLow