c和c++的有inline c在c99中添加了inline函数
但是inline函数
作用
更安全的宏
在调用点展开
没有栈针的会退
没有符号
只能定义的头文件
一些函数不能采用inline 如递归对次数 未知或者可变参对于参数个数未知
不产生符号。所以必须要定义在头文件中
函数重载的条件
函数名相同 参数类型不同(不能根据返回值去判断函数是否重载)
函数重载的选择一般会选择离自己作用域想相同的地方如果没有再去全局去找;
重载可以是指针可以是引用
c++多态静多态和动多态(函数重载和模版就是静多态)(在编译的时候就选择好)
动多态(虚函数)
c++的const 常量
c语言中的const 为变量
c++中的const常量编译时被替换
const修饰的常变量不是被替换
int *const p 修饰的是 int * p不能改变可以给*p复制
int const *p 修饰的是int *p不能被改变可以给 p复制