求助!c++互相include的两个类如何调用对方的函数

首先互相包涵就有问题,现在我采用的A包涵B,然后在B.h中前置声明class A,但是这样只是声明而已,无法去调用A的函数,请教大侠~
全部评论
防卫声明+前置声明
点赞 回复 分享
发布于 2017-02-24 16:36
前几天刚好遇到,用前置声明吧。 #ifndef _vacTaskParser_h // vacTaskParser类头文件 #define _vacTaskParser_h /** include files **/ //此处省略其他头文件 #include "vacSensorCollector.h" //调用vacSensorCollector类 class vacSensorCollector; //声明vacSensorCollector类 #ifndef _vacSensorCollector_h //vacSensorCollector 类头文件#define _vacSensorCollector_h/** include files **/ //此处省略其他头文件 class TrackTask; // 声明vacTaskParser类
点赞 回复 分享
发布于 2017-02-24 15:35
试试友元类。。。
点赞 回复 分享
发布于 2017-02-23 19:28
可以用#ifndef ...#define... #endif来防止重复包含,如果是相互包含的话,假设1.h和2.h相互包含,那把#include 放在一开头的话就会导致其中一个头文件后面的内容被忽略掉。。因为相互包含,所以你include"1.h"的时候,会调用include"2.h",2.h里面又有#include"1.h"所以走到这一句就会停了,2.h后面的内容也不会复制过去
点赞 回复 分享
发布于 2017-02-23 18:44
用指针可以调用吧。
点赞 回复 分享
发布于 2017-02-23 17:55

相关推荐

头像
11-03 16:48
已编辑
百度_高级研发工程师
事实是检验真理的唯一标准。 无论我们怎么去说,去讲述,去证明,都抵不过一个offer来得实在,无论我们怎么去复现求职中的摸爬滚打、扒皮抽筋、狼狈不堪,都抵不过你在简历写上大厂的名字(外包不算)。 所以在我求职期间,我什么话都不说,什么话都不讲,因为没有意义,虽然我总讲过程才是意义,但只有当你上岸的那一刻,你才有资格回想在水里的挣扎,只有等你出了山,你才知道山的全貌。 我为什么一定要离开华为OD,难道它不稳定吗,不能赚钱吗。为了证明自己,那肯定有的。其实更多的是印证我的认知是否真的正确。 (给不了解我的人交代一下背景,在下双非一本,gap一年,华为OD外包,摸爬滚打4个月,艰难上岸百度正编)一、...
先锋战士:说得很真诚。鄙视链自古有之,学历,家庭背景,财富,权利。从小有之,小学羡慕那些当班委的,中学羡慕那些学生会的,高中羡慕尖子班拿教学金的,大学羡慕高绩点,毕业了羡慕进大厂的。工作了,又羡慕高职级的,再后来又羡慕别人早早结婚的。我想表达的观点很简单,无论是华为od还是百度,都是经历,没有孰高孰低,为了抵达下一个风景,总会付出更多东西,但不就是人生吗?正如登山,每个阶段的山,都要想办法攀登,在博主的文字中,见到了坚持和积极寻找问题解决办法的心态
学历对求职的影响
点赞 评论 收藏
分享
10-13 13:49
南京大学 财务
饿魔:笑死我了,你简直是个天才
点赞 评论 收藏
分享
牛客21331815...:像我一投就pass,根本不用焦虑泡池子
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务