文章目录
一、函数重载
1.函数重载相关的概念
- 一、函数重载
-
- 1.函数重载相关的概念
- 2.C++如何支持、C不支持
- 二、extren "C"
- 三、引用和指针的不同点
- 四、内联函数
函数重载:是在C++中允许在同一作用域中同名函数,这些同名函数的形参列表(参数个数 或 参数类型 或 参数顺序)必须不同,与返回值无关。
2.C++如何支持、C不支持- 通过下面我们可以看出gcc的函数修饰后名字不变。而g++的函数修饰后变成【_Z+函数长度+函数名+类型首字母】
- 通过这里就理解了C语言没办法支持重载,因为同名函数没办法区分。而C++是通过函数修饰规则来区分,只要参数不同,修饰出来的名字就不一样,就支持了重载。
- 另外我们也理解了,为什么函数重载要求参数不同!而跟返回值没关系。
有时候在C++工程中可能需要将某些函数按照C的风格来编译,在函数前加extern “C”,意思是告诉编译器,将该函数按照C语言规则来编译。比如:tcmalloc是google用C++实现的一个项目,他提供tcmallc()和tcfree两个接口来使