我声明我的C++程序的方式有关系吗?
区别在于一个是正确的定义方式main
,另一个不是.
是的,它确实重要.或
int main(int argc, char** argv)
要么
int main()
是你main
的C++规范的正确定义.
void main(int argc, char** argv)
并不是,IIRC,是旧的微软C++编译器带来的堕落.
https://isocpp.org/wiki/faq/newbie#main-returns-int
Bjarne Stroustrup说得很清楚:
这个定义
void main()
不是,也从来就不是C++,也不是C.
见参考文献.
你应该用int main
.C和C++标准都指定main
应该返回一个值.
对于C++,只允许使用int.对于C,C99表示只允许使用int.先前的标准允许void
返回.
简而言之,永远int
.