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

首先互相包涵就有问题,现在我采用的A包涵B,然后在B.h中前置声明class A,但是这样只是声明而已,无法去调用A的函数,请教大侠~
全部评论
防卫声明+前置声明
点赞 回复 分享
发布于 2017-02-24 16:36
用指针可以调用吧。
点赞 回复 分享
发布于 2017-02-23 17:55
可以用#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 19:28
前几天刚好遇到,用前置声明吧。 #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

相关推荐

球球别再泡了:坏,我单9要了14
点赞 评论 收藏
分享
重生2012之我是java程序员:换个稍微正式点的照片吧
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务