Witam, mam "mały" problem z przeciążaniem operatorów. Mianowicie nie przeciążają się.
class Board
{
private:
Field * fields[8][8];
public:
Board();
Field * operator[](const string & position) const;
};
//cpp
Field * Board::operator[](const string & position) const
{
//jakies poprawne dzialania
return fields[i][k];
}
Gdy zechcę się odwołać w ten sposób:
board["a2"]
To nie działa. Natomiast działa gdy napiszę:
board->operator[]("a2") //czyli tak jak w przypadku zwykłej metody
Co poradzić?