防止在C++中递归调用main()
我有一个类似于以下代码的代码:
int main()
{
'some
code'
motors();
}
int motors()
{
if (condition)
{
'some
code'
main();
}
else if (condition)
{
'some
code'
main();
}
else
{
main();
}
}
我可以做些什么来防止反复调用Main?我可以使用Main的代码创建另一个函数吗?
解决方案
调用main
在C++中是未定义的行为。您可以将main
中的所有函数包装到另一个函数中。
int main()
{
wrapper();
}
void wrapper()
{
//code originally in main
}
当您需要调用main
时,请改为调用此包装。
int motors()
{
if (condition)
{
wrapper();
}
相关文章