C++学习日记5——模板篇的静态和运算符重载
2016-10-04 20:35
225 查看
知识点1:静态
关键字static
静态数据成员在类未实例化对象时,就已经存在,即分配好内存。
相反,普通数据成员却时在实例化对象后,才分配好内存。
在静态的成员函数中,不可调用非静态的成员函数和数据成员,但可调用静态的成员函数。
知识点2:静态数据成员和静态成员函数
注意事项:
1.静态数据成员必须单独初始化
2.静态成员函数不能调用非静态成员函数和非静态数据成员。
3.静态数据成员只有一份,且不依赖对象而存在。
知识点3:运算符重载
本质:函数重载
关键字:operator
注:有的函数必须要用成员函数重载,有的函数必须要用友元函数重载
知识点4:一元运算符重载
-(符号)的重载:a、友元函数重载(如friend Coordinate& operator-(Coordinate &coor);)
b、成员函数重载(如Coordinate& operator-();)
++符号的重载:
a、前置++符号重载(如Coordinate& operator++();)
b、后置++符号重载(如Coordinate operator++(int);)
知识点5:二元运算符重载
+运算符的重载:
a、友元函数重载:如firend Coordinate operator+(const Coordinate &c1, const Coordinate &c2);
b、成员函数重载:如Coordinate operator+(const Coordinate &coor);
c、[]索引运算符:如int operator[](int index);
注:索引运算符不可以采用友元函数重载,只能使用成员函数重载
关键字static
静态数据成员在类未实例化对象时,就已经存在,即分配好内存。
相反,普通数据成员却时在实例化对象后,才分配好内存。
在静态的成员函数中,不可调用非静态的成员函数和数据成员,但可调用静态的成员函数。
知识点2:静态数据成员和静态成员函数
注意事项:
1.静态数据成员必须单独初始化
2.静态成员函数不能调用非静态成员函数和非静态数据成员。
3.静态数据成员只有一份,且不依赖对象而存在。
知识点3:运算符重载
本质:函数重载
关键字:operator
注:有的函数必须要用成员函数重载,有的函数必须要用友元函数重载
知识点4:一元运算符重载
-(符号)的重载:a、友元函数重载(如friend Coordinate& operator-(Coordinate &coor);)
b、成员函数重载(如Coordinate& operator-();)
++符号的重载:
a、前置++符号重载(如Coordinate& operator++();)
b、后置++符号重载(如Coordinate operator++(int);)
知识点5:二元运算符重载
+运算符的重载:
a、友元函数重载:如firend Coordinate operator+(const Coordinate &c1, const Coordinate &c2);
b、成员函数重载:如Coordinate operator+(const Coordinate &coor);
c、[]索引运算符:如int operator[](int index);
注:索引运算符不可以采用友元函数重载,只能使用成员函数重载
相关文章推荐
- C++学习笔记4--静态属性 静态方法 虚方法 抽象方法 多态性 析构函数 运算符重载 多继承 虚继承
- C++学习日记4——模板篇的友元函数和友元类
- 嵌入式开发之C++基础学习笔记5--静态成员,友元,运算符重载,模板,文件流
- C++学习日记6——模板篇的函数模板和类模板
- C++学习日记7——模板篇的标准模板库
- 2009-11-04 东鳞西爪c++学习日记之静态成员
- 【C++基础学习】关于C++静态成员函数和变量
- 【C++基础学习】关于C++静态数据成员
- c++学习日记
- C++学习摘要之七:运算符重载
- C++学习摘要之七:运算符重载 .
- C++学习日记 7.29
- 【C++基础学习】关于C++静态数据成员
- 将类成员函数作为线程入口函数——关于C++ 类静态成员的学习
- C++学习日记day06
- C++编程思想学习——运算符重载
- 黑马程序员_java学习日记_Java高新技术静态导入,可变参数和加强的FOR循环
- 2007.3.7--C++学习日记--MFC--ZeroMemory宏
- 2007.3.7--C++学习日记--MFC--用VC调用Shell中的目录浏览对话框
- C++ 学习日记day01