【发布时间】:2023-04-09 08:18:01
【问题描述】:
当 B 类的成员函数 func 尝试返回类 C 时,我获得了 error: 'func' does not name a type:
class A {
public:
class B {
public:
C func() const {
...
}
private:
friend class A;
}
class C {
public:
...
private:
friend class A;
}
private:
...
}
然而,如果func 是 A 的成员函数,则以下内容不会产生此错误:
class A {
public:
class B {
public:
...
private:
friend class A;
}
C func() const {
...
}
class C {
public:
...
private:
friend class A;
}
private:
...
}
如何修复它以使第一个版本正常工作?
我找到了一个很好的例子here。
【问题讨论】:
-
你为什么要在另一个类中声明类?