VS报出的C2134,C4430,C2238错误

代码没有错误,但是报出了如下的错误。

错误原因:类与类之间的引用存在耦合现象。

解决办法:(根据如下引用的关系进行调整)

//class A.h
#include "B.h"
class A
{
    int i;
    B b;
}

//class B.h
class A;
class B
{
    int i;
    A *a;
}

//B.cpp
//在B.cpp中的文档包含处要有下面语句,否则不能调用成员a的任何内容
#include "A.h"
B::B()
{
    ……
}

文章借鉴来源:https://blog.csdn.net/qq_26374395/article/details/78044804
https://www.jianshu.com/p/51ceab77f903

猜你喜欢

转载自blog.csdn.net/iamjingong/article/details/81629857