C++如何从一个函数内部跳出来直接进入另一个函数并且从头开始运行?

2025-02-25 09:14:31
推荐回答(3个)
回答1:

void Add(){
.....
case 5:break; // 直接break就可以。
}
}
void MainMenu(){
int a;
bool exitFlag = false;

do
{
cout<<"*****公 司 人 员 管 理 系 统*****"< cout<<" 1. 显 示 人 员 信 息"< cout<<" 2. 查 找 人 员 信 息"< cout<<" 3. 增 加 人 员 信 息"< cout<<" 4. 删 除 人 员 信 息"< cout<<" 5. 保 存 人 员 信 息"< cout<<" 6. 退 出 管 理 系 统"< cout<<"请选择所需的操作:"< cin>>a;
switch(a){
case 1:AllPrint();break;
case 2:Find();break;
case 3:Add();break;
case 4:Delete();break;
case 5:Save();break;
case 6:exitFlag = true; cout<<"谢谢使用!"< }
}while(!exitFlag);
cout<<"Thanks!"<}

回答2:

除非用两个线程,当运行MainMenu函数的时候直接从线程的角度去关掉Add函数,但是我不确定这样可不可以
你可以用case 5:return MainMenu();可以达到目的,其实这样情况Add还是在MainMenu()走完后才走完,但是可以达到你的目的,你可以换种方式去思考你的目的,也许有更好的突破

回答3:

你把MainMenu行数里的代码变成一个循环只有在选择6的时候才推出循环就行