Witam. Jak można przeciążyć operator podwójnego wywołania nawiasu kwadratowego np. A[2][3] ?
0
0
Jako taki operator[][] nie istnieje, stąd też nie można go przeciążyć. Możesz za to albo zwracać z operatora[] typ który sam z siebie działa tablicowo (np dla macierzy wskaźnik na wiersz/kolum), albo zwracać kolejny typ z przeciążonym operatorem[].
0
Mogę prosić o przykład? Próbowałem coś sam zrobić ale mi nie wychodzi.
0
class Row
{
double tablica[255];
public:
double& operator[] (int i)
{
return tablica[i];
}
};
class Matrix
{
Row tab[255];
public:
Row& operator[](int i)
{
return tab[i];
}
};