是这样的,我打算封装一个类导出dll,但是这个类的私有成员变量有另一个类
class A
{
privated:
B b;//(B是一个类)
}
那么A类的头文件就得包含B类的头文件,那最终使用封装的dll时,不是就需要A类的头文件和B类的头文件?但是我只想一个dll,一个lib和一个.h。这样应该怎么封装呢?
关于封装c++类为DLL的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- nanjun520 2016-12-13 08:28关注
把你的A实现修改一下
privated:
B b;//(B是一个类) ====》privated:
B *pb;//(B是一个类)
这样你在A.h里面就不需要包含 include "B.h"文件了,修改为 class B;
再在A.cpp文件里面 include "B.h" 就可以不需要 B.h文件了。
在A类里面 就需要new B对象了,还有 A释放的时候 记得 delete pb防止 内存泄露本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 腾讯企业邮箱邮件可以恢复么
- ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
- ¥15 错误 LNK2001 无法解析的外部符号
- ¥50 安装pyaudiokits失败
- ¥15 计组这些题应该咋做呀
- ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
- ¥15 让node服务器有自动加载文件的功能
- ¥15 jmeter脚本回放有的是对的有的是错的
- ¥15 r语言蛋白组学相关问题
- ¥15 Python时间序列如何拟合疏系数模型