Pues a ver, de esto no sé gran cosa, pero de entrada, el operador debería regresar una entrada del arreglo y no todo el arreglo ¿no? Tampoco entiendo el uso de los apuntadores, ¿por qué no devuelves directamente la entrada?
Prueba así:
Código:
class miClase
{
private:
int a[2];
public:
miClase()
{
a[0] = 1;
a[1] = 2;
}
int operator[] (int pos){ return a[pos]; }
};
int main(int argc, char *argv[])
{
miClase * z = new miClase();
int b = (*z)[1];
}
// Saludos