【发布时间】:2018-08-18 15:42:40
【问题描述】:
我有一个名为 Circle 的类,我封装在一个命名空间中。
namespace my_name_space {
class Circle;
}
class my_name_space::Circle {
private:
double radius;
public:
friend std::ostream& operator << (std::ostream &os, const Circle &c);
};
下面是实现文件中的函数:
std::ostream& operator << (std::ostream &os, const Circle &c)
{
os << "Radius: " << c.radius;
return os;
}
在将类封装在命名空间中之前,一切正常。现在好友功能不能再访问私有数据成员了。我不明白怎么了。
【问题讨论】:
标签: c++ namespaces friend