В следующем объявлении:
int arr[10];
оба эти назначения действительны:
arr[0] = 0;
1[arr] = 1;
Как я могу реализовать функцию operator[]
, чтобы она была коммутативной?
Предположим, у нас есть этот класс:
class Arr
{
private:
int a, b, c, d;
public:
int& operator[](...)
...
}
И мы хотим получить доступ Arr obj;
==> obj[1]
возвращает b
, а также 1[obj]
возвращает b
Как я могу это сделать?