gpt4 book ai didi

c++ - 我如何从 void 中退出我当前的范围,以便我可以回到 main?我需要做什么?

转载 作者:行者123 更新时间:2023-11-30 03:58:03 27 4
gpt4 key购买 nike

我的错误:

|21|error: 'main' was not declared in this scope|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

我的实际程序完全不同并且更大(因此不需要标题)。我只是写这个来快速演示我的问题。我如何离开该 void 函数的范围并返回到 main (我的程序菜单实际所在的位置)?

#include <iostream>
#include <cmath>
#include <cstdlib>
#include <cstdio>
#include <limits>

int continueint;

using namespace std;

class handles {
public:
void continueChoice()
{
cout<<"[1] Go back to the main menu"<<endl;
cout<<"[2] Terminate the program"<<endl;
cin>>continueint;
switch (continueint)
{
case 1:
main(); // This is where my problem lies
case 2:
break;
}
}
}handlers;

int main(int nNumberofArgs, char*pszArgs[])
{
cout<<"A message here."<<endl;
system("PAUSE");
handlers.continueChoice(); //Calls the void function in the above class
}

最佳答案

只需返回:

void somefunc() {
if (something)
if (something_else)
return;
}
}
}

您可以从 void 函数返回。你只是不能返回一个对象。

进一步说明,您永远不应该调用 main。您可以通过将 continueChoice 放在 main 下并向前声明它来进行编译,但是您将创建一个无限递归循环,这对所有事情都非常不利。

关于c++ - 我如何从 void 中退出我当前的范围,以便我可以回到 main?我需要做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27629760/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com