我正在将代码从 Java 移植到 c++,并且我想复制一些匿名功能。
在文件啊我有:
class A
{
private:
int a;
class AnonClass;
friend class AnonClass;
};
在文件 A.cpp 我有:
namespace
{
class AnonClass
{
public:
AnonClass(A* parent)
{
parent->a = 0; // This doesn't work, a is not accessible
}
}
}
是否可以在 C++ 中的匿名命名空间中为类添加好友?
在 Java 中,您可以声明匿名类,因此它会非常相似。它也不会将 AnonClass 暴露给 Ah 的客户