下标运算符重载以访问私有数组

时间:2014-08-21 23:41:15

标签: c++ overloading operator-keyword

我正在尝试重载operator[],然而,正在进行一些时髦的事情。

To avoid long codes here, I put the code on GitHub (I'll keep the code as is there forever).

问题在于,当我访问下标时,在访问GameEntry时它不会返回s[0],而是Scores。除此之外,<<运算符返回整个数组,而我只请求其中一个条目。

请指教。感谢

编辑:第{58}行宣布operator[]

1 个答案:

答案 0 :(得分:3)

此行将指针声明为Scores

Scores *s = new Scores(5);

所以而不是

cout << typeid(s[0]).name() << endl;

cout << typeid((*s)[0]).name() << endl;