超載[]的問題,這是我的泛型類:在2個變化
template<class T, class PrnT>
class PersonalVec {
public:
PersonalVec();
T &operator[](int index) const;
const T &operator[](int index) const;
private:
std::vector<T> _vec;
};
我需要實施2個版本的[]操作:
一個會返回一個const引用和經常一個這也將返回一個參考。 當我編譯它,我得到:
PersonalVec.hpp:23: error: ‘const T& PersonalVec<T, PrnT>::operator[](int) const’ cannot be overloaded
PersonalVec.hpp:22: error: with ‘T& PersonalVec<T, PrnT>::operator[](int) const
我已經把其中一方的言論,然後它編譯,所以我想他們已經在某種程度上發生碰撞。什麼是問題,我該如何解決它?
謝謝!