sobrecarga [] [] operadores em c ++
Estou escrevendo uma matriz 3x3 em c ++.
glm :: mat3 fornece acesso aos dados da matriz através do[][] operator
sintaxe.
por exemplo.myMatrix[0][0] = 1.0f;
definiria a primeira linha, a primeira entrada da coluna para1,0f.
Eu gostaria de fornecer acesso semelhante. Como posso sobrecarregar o[][] operator
s?
Eu tentei o seguinte, mas recebo erros:
nome do operador deve ser declarado como uma função
const real operator[][](int row, int col) const
{
// should really throw an exception for out of bounds indices
return ((row >= 0 && row <= 2) && (col >= 0 && col <= 2)) ? _data[row][col] : 0.0f;
}
Qual é a maneira correta de sobrecarregar este operador?