猿问

C++函数不需要声明?

int main()
{
using namespace std;
simon(3); 
cout << "Pick an integer: ";
int count;
cin >> count;
simon(count); 
cout << "Done!" << endl;
return 0;
}
这个main函数中没有像C语言一样先对simon函数进行声明,这样是可行的嘛?

蓝山帝景
浏览 1903回答 2
2回答

沧海一幻觉

C++里调用函数是否需要声明需要注意以下两点:自己实现的函数,在调用的地方之前实现,无须声明,否则需要声明。使用系统提供的函数,包含头文件即可使用。申明和定义之间的区别。&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 申明-- 不开辟内存,仅仅告诉编译器,申明的部分存在,要预留一点空间。&nbsp;&nbsp; 定义-- 开辟内存。&nbsp;&nbsp;申明 属于 预编译范畴的。最好写在头文件中(楼主,自定义头文件学了没有啊?)(申明都写在头文件中,只是一种好的编程习惯)&nbsp;&nbsp; 因为 在编译的时候,编译器先处理一些特殊数据(宏定义,函数的申明,变量的申明),在这个过程中,编译器 通过申明 可以预测整个定义需要的内存大小,并且 把这些大小预留起来,留给定义的时候使用(因为虽然定义,但是在&nbsp;main函数里面没有调用,一样的不分配内存)。&nbsp;&nbsp; 如果不事先申明,直接定义,有可能会造成系统崩溃,出现内存不足,不能分配。 然而现在内存都是1G左右了,所以一般空间都足够,所以你也可以不申明直接定义函数。&nbsp;&nbsp; &nbsp; 但是一旦内存紧张,就会出错,而且程序简洁性就很低。(不看到定义,还不知道原来还定义了这么一个函数!!!)还有 变量也一样,标准的都是 先申明在定义。&nbsp;extern int i; //申明&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;int i=0; //定义并初始化为0&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;int i; //定义.。。。。。。。。。。。。。。。。。&nbsp;所以 从现在其要养成良好的编程习惯&nbsp;&nbsp;&nbsp;先申明,在定义。申明最好都放在 一块,并且都在头文件中(为了便于管理)。

达令说

c++函数分为自定义函数和库函数对于自定义函数,需要在程序代码中提前声明并写出函数内容,调用方法和参数而库函数则是c++编译器中自带的函数,需要在头文件中声明头文件声明如:#include<math.h>,其中就包含了如sqrt()的函数
随时随地看视频慕课网APP
我要回答