文章目录
前言
刚开始学习c++,就要把细小的知识点,掌握扎实,多练习,多总结。
一、命名空间
功能: 对标识符的名称进行本地化,以避免命名冲突或名字
污染
1. 命名空间定义
namespace + 命名空间名称 { 变量,函数}
1) 嵌套
2) 分段定义
一个命名空间就定义了一个新的作用域,命名空间中的所有内容都局限于该命名空间中。
2. 命名空间中成员的访问形式
1) 命名空间 :: 成员 (推荐使用)
2) using 命名空间 :: 成员 (推荐使用)
3) using namespace 命名空间
命名空间下的所有成员全部都暴露在全局作用域中,可能会和全局域中的成员发生混淆。
C++头文件中定义的所有成员都属于std命名空间。
c++中cin、cout要展开std命名空间:using namespace std
二、缺省参数
缺省参数是声明或定义函数时为函数的参数指定一个默认值。在调用该函数时,如果没有指定实参则采用该默认值,否则使用指定的实参。
缺省参数分类
1. 全缺省参数
全缺省:所有参数都有默认值
2. 半缺省参数
半缺省:部分参数设置默认值
注意:
- 半缺省参数必须从右往左依次来给出,不能间隔着给
- 函数声明和定义不能同时出现默认值,只能有一个有默认值
如果声明与定义位置同时出现,恰巧两个位置提供的值不同,那编译器就无法确定到底该用那个缺省值。
三、函数重载
函数重载:C++允许在同一作用域中声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数 或 类型 或 顺序)必须不同。
只有返回值类型不同,不能构成函数重载。