если у меня есть
int arr[10] = { 1,2,3,4,5 };
std::cout << arr[1,4] << "\n";
, код компилируется нормально и возвращает 5 (обр. [4]). Это верно даже при перегрузках оператора [] в разных классах. Другими словами, если у меня есть:
class A{
public:
int operator[](int i) {return i;}
}
A a;
std::cout<<a[1,4];
, я получу 4 (a [4]). Нет проблем компиляции. Есть ли способ избежать потенциальных ошибок из-за ошибки компиляции в таких случаях?