函数重载
特征标-函数参数
函数模板
template<class Any>;
void Swap(Any &a,Any &b);
模板的重载
void Swap(Any[],Any[],int n);
显示具体化
template<> void Swap<int>(int &,int &);
头文件管理
如果没有被定义过才查看 idndef 和endif之间的内容
#ifndef COORDIN_H_
...
#endif
存储持续性
-
自动
程序执行时被创建,执行完时被释放
堆栈实现
没有使用说明符时与auto等效
寄存器实现
register int y; //寄存器没有地址 &y not allowed
-
静态
函数定义外的变量和static定义的变量,在程序整个运行过程都存在。(使用固定内存块)
默认初始化为0,只能使用常量表达式来初始化;
-
与自动变量同名时将被覆盖,使用extern重新声明可使用以前的外部变量
-
::放在变量前表示使用全局版本
外部链接性
代码块外部声明;
- 在其他文件使用时要加上extern
内部链接性
代码块外部声明且加staic关键字
- 声明与其他文件同名外部变量时会冲突,使用static可隐藏其他文件的变量
无链接性
代码块内部声明且加static关键字
-
动态
new操作符分配的内存,一直存在,直到delete将其释放或程序结束。