重载函数:同一作用域,同名不带形参的函数集。
重载运算符:
1、运算符只能针对基本类型
2、重载运算符拓展对复杂类型进行运算:重载运算符函数
<返回类型> operator<运算符>(形参列表)
{
}
3、运算符:sizeof, :: * -> .不能重载
4、顺序性,结合性,数目不能改变
C++的堆区申请:
1、new 运算符。用于申请堆区空间,必须由delete来释放
2、分配空间:
1、一个变量空间
new 类型 new char(字符值) delete 地址
2、一个对象空间
new 类名(实参列表); delete 对象地址
3、一块空间:(数组) int[];
new 类型[长度]; delete[] 首地址
1、常数据 (*)
1、常变量
const 类型 变量=...;//或者 类型 const 变量=...;
注:不能修改只读变量,常变量必须初始化
常指针变量:
2、常对象:对象是一块只读空间
cosnt 类 对象;
注:必须在构造函数中对数据进行初始化
3、常成员:
常成员属性:必须初始化常成员属性(只能由初始化列表)
1、只能访问不能修改
常函数
<返回值>函数名(形参列表) const;
成员属性: 不是“常函数” 常函数
非const属性 可以访问,可以修改 可以访问,不能修改
const属性 可以访问,不能修改 可以访问,不有修改
const成员对象 不可访问,不可修改 可以访问,不能修改对象
4、无名对象:
实例化时,直接调用构造器生成无名的常量对象。
作用:临时传递
string lf="abcd";
1、由于lf没有实例化时,abcd需要赋值给lf,类型不对等。
故,先将abcd转换为无名常量对象。 string lf=string("abcd");
2、再将无名常量对象拷贝给lf
笔试的重点:
1、定义类string
既要使数据能在一定范围内共享,又要保证它不被任意修改,可使用const。
· 用const修饰的声明数据成员称为常数据成员
· 用const修饰的声明成员函数称为常成员函数
· 用const修饰的定义对象称为常对象
变量或对象被const修饰后其值不能被更新。因此被const修饰的变量或对象必须要进行初始化。