前向声明的集体成员的前向声明

时间:2012-03-14 12:12:50

标签: c++

是否可以转发声明在另一个前向声明的类中声明的类?

基本上,我有类似的东西

//A.h
class A
{
...
    struct B
    {
    ...
    };
};

现在我想声明另一个类

//Q.h

class A;
struct A::B;

class Q
{
    A::B* Foo();
};

1 个答案:

答案 0 :(得分:4)

不,它无法完成。要访问A的成员,无论成员是类型,数据还是函数,都必须对其进行定义。