我知道以这种方式编写代码是可能的:
void foo() {...}
void bar() {...}
string qix(){...}
int main()
{
//functions calling
}
也可以这样写:
/* function's prototypes here*/
int main()
{
//functions calling
}
void foo() {...}
void bar() {...}
string qix(){...}
那么,如果我想创建一个好看,可理解的代码,那么放置main()函数的最佳方法是什么?我应该在描述其他功能之前/之后放置它吗?通常使用哪种变体?
答案 0 :(得分:2)
当程序在C而不是C ++时,我总是把我的main函数放在start,所以如果有人或你自己想看程序逻辑,那么可以看到而不需要去文件结束,如果任何人对任何功能都有疑问,只需向下滚动即可。 这是我的意见。 在优化方面是一样的。 在C ++中,我的main方法只有几行,所有函数都在类中。
所以就是这样:
int main()
{
//functions calling
}
void piz() {...}
void detz() {...}
string huinya(){...}
希望对你有所帮助。
答案 1 :(得分:2)
在任何稍微复杂的程序中,您将拥有多个编译单元(读取:多个* .cpp文件)。
包含main
的文件不包含任何其他函数(或类,结构,typedef等),尤其不包含所有其他函数!当然,它会有多个#include
语句。你只是不把所有东西写在一个大的源文件中。
main
的正确位置因此:仅在其自己的文件中,类似于main.cpp
答案 2 :(得分:1)
归结为个人偏好,但我所理解的标准是你的第二个例子。当谈到“放置main()函数的最佳方式”时,确实没有这样的东西,你会适应当前的情况。
/* function's prototypes here*/
int main()
{
//functions calling
}
void piz() {...}
void detz() {...}
string huinya(){...}
答案 3 :(得分:1)
这是一个品味问题,但我喜欢构建我的程序,以便main函数是单个文件main.cpp中唯一的函数。它通常看起来像这样:
// include statements
int main()
{
try{
// call functions to initialize program
return EXIT_SUCCESS;
}
catch(std::exception& e){
std::cerr << e.what() << std::endl;
}
catch(...){
// additional exception handling for exceptions not derived from std::exception
}
return EXIT_FAILURE;
}
这将捕获代码中其他位置的所有未处理异常,并使主函数保持简洁。对于
EXIT_SUCCESS
和
EXIT_FAILURE
请参阅cstdlib。