关于私有数据和重载
我定义了一个Point类,数据成员x,y 为私有,重载了[]
在重载 > > 中,
friend istream& operator> > (istream& ip, Point <T> & p)
{
ip> > p.x > > p.y; // p怎么可以获取私有数据? 而且写成p[0], p[1]反而不行, 相反,重载 < <时却可以用[]!
return ip;
}
以上代码是正确的。
问题见注释,谢谢关注!
[解决办法]
up 贴全代码
[解决办法]
T operator[](int) const;
加一个T & operator[](int);
[解决办法]
你不是friend了么。