在组合boost,演示项目和另一个库时,我遇到了我的定义问题。如何在一个cpp中的类定义可见/可用于另一个cpp
有一个X.cpp文件,包括一个类X,我需要在Y.cpp中使用这个类作为变量,将一个void指针转换为指向这个类的指针。
代码:
X.cpp
#include <boost/...>
class x {
}
Main(){
x c(...);
handler = init(&c);
anotherLib-Function(void *handler);
//will call function in Y.cpp with c as void pointer
}
Y.cpp
#include ?!!
yfunction(void *c){
x *cHandle;
*cHandle = (x *)c;
(*cHandle).write("texte");
}
这是它如何工作最后一次 - 种。我非常感谢这个混乱的结构或使这个代码更好/工作的任何事情的可靠解决方案。谢谢!
可能你需要在'x.hpp'头文件中声明你的'x'类吗? – fasked
这正是C++具有头文件的原因。 – Jon
没有一个 - 也有这个想法,但遇到了其他麻烦 - 已经开始刷新我的内存和基本结构的记忆,但希望在这里采取一个小捷径。我会再试一次,再看看我在这条道路上遇到的麻烦。 – Jook