error: 'func' does not name a type
当一个func
类的成员函数B
试图返回一个类时,我获得了一个C
:
class A {
public:
class B {
public:
C func() const {
...
}
private:
friend class A;
}
class C {
public:
...
private:
friend class A;
}
private:
...
}
Run Code Online (Sandbox Code Playgroud)
然而,如果func
是A的成员函数,则以下内容不会产生此错误:
class A {
public:
class B {
public:
...
private:
friend class A;
}
C func() const {
...
}
class C {
public:
...
private:
friend class A;
}
private:
...
}
Run Code Online (Sandbox Code Playgroud)
如何修复它以使第一个版本工作?
我发现了一个很好的例子在这里.