如何实现一个类函数声明为另一个类的友元,并且两个类在不同的文件中, 举例如下:

[复制链接]
查看11 | 回复3 | 2013-5-7 00:48:35 | 显示全部楼层 |阅读模式
利用一下extern关键词就可以了,在A.h文件里面class A 出现的前面加上 externclass B;这句话的意思是,这里需要一个B 类的声明,而B类不在当前文件中,需要在其他文件找同理 你还需要在 B.h 中加入externclass A;又因为在B.cpp中用到 A类的实现,所以要加上#include "A.h"修改后://A.hexternclass B;
//////////////////////添加class A{private:int val_a;friend void B...
回复

使用道具 举报

千问 | 2013-5-7 00:48:35 | 显示全部楼层
#ifndef C_H_#define C_H_#include "D.h"class C{
int m_i;public:
C(int i);
~C();
friend void D::foo(C& c);};#include "C.h"C::C(int i){
m_i = i;}C::~C(){}#ifndef D_H_#d...
回复

使用道具 举报

千问 | 2013-5-7 00:48:35 | 显示全部楼层
可以吧,但是可能得在A.h里面加上 #include B.h, 在B.h里面加上#include A.h...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行