c++怎么让两个类的成员函数通过友元函数互相使用呢?
//这个是名为20221012.cpp的文件
#include"classoss1.h"
class oss{
public:
friend void oss1::show(oss &emp);//oss1的友元
void pubo(oss1& emp);
private:
string name1;
};
void oss::pubo(oss1 &emp){
cin>>name1;
cout<>emp.name1;
cout<int main()
{
oss www;
oss1 qqq;
www.pubo(qqq);//
qqq.show(www);//oss和oss1的函数互相调用
return 0;
}
********************************************************
//作为头文件classoss1.h
#include"20221012.cpp"
#include"Mobile.h"
class oss1{
public:
void show(oss& emp);
friend void oss::pubo(oss1 &emp);//oss的友元
private:
string name1;
};
class oss;
void oss1::show(oss &emp){
cin>>emp.name1;
cout<
运行结果及报错内容
c:\users\dell\desktop\c.test\classoss1.h(2) : warning C4182: #include nesting level is 363 deep; possible infinite recursion
c:\users\dell\desktop\c.test\classoss1.h(2) : fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit
我的解答思路和尝试过的方法
我知道是调用太深了,但是不知道怎么解决
我想要达到的结果
实现两个类之间通过友元函数互相调用成员
不知道你这个问题是否已经解决, 如果还没有解决的话: