您的位置:首页 > 编程语言 > C语言/C++

C++ 保存在两个cpp文件中函数,怎样声明才能互相调用?

2012-07-25 11:30 429 查看
主函数所在cpp:
#include "menu_1.cpp"
#include "menu_2.cpp"
void main(){
char choice;
do{
choice=_getch();
}while(choice!='0'&&choice!='1')
switch(choice)
case '0':
menu_1();
case '1':
menu_2();
}

menu_1()所在menu_1.cpp:
void menu_1(){
//其他操作
char choice;
do{
choice=_getch();
}while(choice!='0'&&choice!='1')
switch(choice)
case '0':
exit(0);
case '1':
menu_2();
}

menu_2()所在menu_2.cpp:
void menu_2(){
//其他操作
char choice;
do{
choice=_getch();
}while(choice!='0'&&choice!='1')
switch(choice)
case '0':
exit(0);
case '1':
menu_1();
}

由于作业需要,必须将menu_1和menu_2放在两个cpp文件中,但按我那样在主函数前声明的话,编译时会在menu_1.cpp中menu_2();那一行显示无法识别标识符menu_2(),哪位老虾帮帮忙,指点下该怎么声明?
编辑环境是VisualStudio2008
把#include "menu_1.cpp"#include "menu_2.cpp"这两句换成extern void menu_1();extern void menu_2();在menu_1.cpp开头加上extern void menu_2();在menu_2.cpp开头加上extern void menu_1();还有,你的代码中有语法错误void main(){char choice;do{choice=_getch();}while(choice!='0'&&choice!='1'); // 这里要加分号switch(choice){         // switch后面要跟大括号case '0':menu_1();break;       // 这里要加breakcase '1':menu_2();break;default:;}}main(), menu_1(),menu_2(),都是如此。此外,不知道你的"menu_1.cpp""menu_2.cpp"是否包含了_getch,exit的头文件要记得包含上
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐