android NDK 开发遇到error: unknown type name xxx。问题
如标题 在ndk 开发过程中 ,遇到了这个问题。但是当我 找到对应的cpp 文件时。头文件引入是没有问题的。。如果你也遇到了这中情况 。请你看一下 假如 报错的是A 找不到B 的 情况。A中包含了B 的头文件 再看看B 是不是也包含了A或者 间接 包含了A 的头文件 (比如B 包含了C 但是C包含了A)。。 这时 你的编译是不能通过的。其原因是它们的头文件互相包含了,你包含我,我又包含你 。这是不
·
如标题 在ndk 开发过程中 ,遇到了这个问题。但是当我 找到对应的cpp 文件时。头文件引入是没有问题的。。
如果你也遇到了这中情况 。请你看一下 假如 报错的是A 找不到B 的 情况。 A中包含了B 的头文件 再看看B 是不是也包含了A
或者 间接 包含了A 的头文件 (比如B 包含了C 但是C包含了A)。。 这时 你的编译是不能通过的。其原因是它们的头文件互相包含了,你包含我,我又包含你 。这是不行的。。 所以如果 B想用A ,其实可以直接在B 中直接用A 的不用包含头文件 ,下面举个栗子 给你们尝尝
#include B.h
class A
{
int i;
B* b;
}
-------------------
#includeA.h
class B
{
int i;
A* a;
}
//===============华丽的分割线=========== 下面是解决办法
#include "B.h"
class A
{
int i;
B b;
}
--------------------------
//class B.h
class A; //定义一个A
class B
{
int i;
A *a;
}
---------------------------
//B.cpp
//在B.cpp中的文档包含处要有下面语句,否则不能调用成员a的任何内容
#include "A.h"
B::B()
{
……
}
这样就可以解决问题了。
更多推荐
已为社区贡献5条内容
所有评论(0)