Cześć!
napisałem sobie następującą klasę:
class klasa
{
public:
double *** tab;
void fun(int a, int b, int c);
klasa::klasa(){};
protected:
int x;
int y;
int z;
};
void klasa::fun(int a, int b, int c)
{
x = a;
y = b;
z = c;
int i,j;
tab = new double**[x];
for(i=0; i<x; i++)
{
tab[i] = new double*[y];
for(j=0; j<y; j++)
tab[i][j] = new double[z];
}
}
Wszystko działa jak należy. Niestety ten wskaźnik dla bezpieczeństwa powinien być protected! No i pytanie teraz: jak napisać funkcję, która będzie się odwoływać do tego wskaźnika tak jakby się odwoływało do zwykłej tablicy (z operatorem [][][]) -> tj. jak przeciążyć taki operator?
Obecnie odwołuję się do tego obiektu tak:
klasa obiekt;
obiekt.fun(3,4,5);
obiekt.tab[x][y][z];
chciałbym identycznie tylko żeby tab była funkcją, która przy okazji sprawdza czy podany parametr nie jest większy od x/y/z zapisanego w klasie w miejscu protected.
Z góry dziękuję za pomoc!