那不知道。应该至少不会出现递归了呀。
你把头文件中的代码全注释掉。就留那几个预处理指令,再重建一次,看看行不行。
你把头文件中的代码全注释掉。就留那几个预处理指令,再重建一次,看看行不行。
/////main.cpp #include"man.h" #include<iostream> using namespace std; char ManOrWoman; int main() { put(); out(); cout<<"MAIN_CPP"<<endl; /*...*/ return 0; } /*...*/ //////man.h #ifndef MAN_H_ #define MAN_H_ #include<iostream> #include"woman.h" using namespace std; void put() { cout<<"MAN_H"<<endl; } /*...*/ //////woman.h #ifndef WOMAN_H_ #define WOMAN_H_ #include"man.h" #include<iostream> using namespace std; void out() { cout<<"WOMAN_H"<<endl; } /*...*/执行后输出: