Prior to C++23, you could not overload operator[]
to accept multiple arguments. As a workaround, you instead can overload operator()
. (See How do I create a subscript operator for a Matrix class? from the C++ FAQ.)
From C++23, as mentioned in a (deleted) answer by cigien, multiple subscript arguments can be passed to operator[] directly. See this demo from the cppreference page.