我有一个代码库,其中Matrix类的()
运算符有以下两个定义:
template <class T> T& Matrix<T>::operator() (unsigned row, unsigned col)
{
......
}
template <class T> T Matrix<T>::operator() (unsigned row, unsigned col) const
{
......
}
我理解的一件事是第二个声明不返回引用,但是第二个声明中的const
是什么意思?另外,当我调用mat(i,j)
时,哪个函数被调用?