函数原型和函数声明有什么区别
本帖最后由 Q╜先森 于 2017-6-22 14:46 编辑函数原型和函数声明有什么区别 所谓声明(Declaration),就是告诉编译器我要使用这个函数,你现在没有找到它的定义不要紧,请不要报错,稍后我会把定义补上。
函数声明给出了函数名、返回值类型、参数列表(参数类型)等与该函数有关的信息,称为函数原型(Function Prototype)。
函数原型的作用是告诉编译器与该函数有关的信息,让编译器知道函数的存在,以及存在的形式,即使函数暂时没有定义,编译器也知道如何使用它。
有了函数声明,函数定义就可以出现在任何地方了,甚至是其他文件、静态链接库、动态链接库等。
最后再补充一点,函数原型给出了使用该函数的所有细节,当我们不知道如何使用某个函数时,需要查找的是它的原型,而不是它的定义,我们往往不关心它的实现。 楼上正解{:10_266:} 函数原型 函数原型就是函数的调用接口 编译器根据函数原型判断你传参对不对
函数实现 函数内部怎么做(函数的代码)
用符号解析(Symbol Resolution)的观点来说 , 函数调用语句是引用(referrence) .
函数定义是定义(definition) . 是具体代码的实现 .
举个例子吧
void f();//是声明
void f()//是定义
{
}
其实区分函数定义与函数声明很简单 , 有花括号的就是定义 .
定义 == 具体实现
那函数声明有什么用啊
页:
[1]