C++笔记(一)
一、基础知识
1.1、函数重载
- 同名不同参
- 本质是编译时修改了函数名,name mangling
1.2、默认参数
int add(int a=1,int b=2){ //默认参数为1和2,不传对应实参时使用默认参数
return a+b;
}
-
如果声明和实现分离,默认参数只能放在声明处
-
默认参数从右边开始填入;
int add(int a,int b)
{
return a+b;
}
- 函数重载和默认参数会产生冲突,优先选择默认参数;
- 本质:有实参就push实参,没有就push默认参数;
1.3、extern ”C“
- 被extern ”C“修饰的代码会按照C语言的方式去编译;
extern "C"{
void func(){
}
void func(int a){ //第二个func会编译报错,因为C编译不允许函数重载
}
}
- 声明和实现分离时&#