我正在开发一个面向对象的C ++课程,我需要从main函数返回错误代码。如何正确地做到这一点?
不幸的是,这是一个评估过的课程,所以我不能在这里发布我的代码。但是,让我们说案件如下:
我正在使用Plugboard,Reflector和Rotor类构建一个enigma机器。我在命令行中将每个配置文件作为参数传递。在此任务中,我提供了一个包含以下内容的文件errors.h:
#define INSUFFICIENT_NUMBER_OF_PARAMETERS 1
#define INVALID_INPUT_CHARACTER 2
#define INVALID_INDEX 3
// and so on...
所以我在我的程序中有几个函数来检查错误,例如检查配置文件是否包含无效字符的函数(它必须是0到25)。我想把它设置为布尔函数,然后在我的main函数中有以下内容:
if (!plugboard.check_invalid_character(/*some arguments*/)) {
cerr << "Invalid character!" << endl;
return 2;
}
但我不完全确定这是正确的做法吗?这太肤浅了吗?是否有更优雅的方式返回错误?
我希望这次我的问题更清楚一些。谢谢。
答案 0 :(得分:3)
您只需要在main方法中返回值4,如下所示:
int main() {
return 4;
}
请注意,你的main函数也可能有参数vector和参数count,因此括号中可能会有更多。
如果KLibby是正确的,你使用一个方法返回你需要使用的值:
int doSomething() {
return 4;
}
int main() {
return doSomething();
}