C++学习笔记——第11章 运算符法重载
2016-03-27 14:36
274 查看
跟重载函数一样,C++也允许定义已有的运算符,通过运算符重载,像处理数据一样使用它们。
11.1 运算符重载
通过自加运算符,了解到只能对变量自加,而不能对对象自加。
11.2 在成员函数中实现自加
新定义一个成员函数,在成员函数内实现成员变量的自加。这种方法是可以,但是太low了。不是真正的对象自加。
11.3 重载前置自加运算符
认识一个新的关键字:operator。
用法:与运算符连用,成为运算重载函数,operator++(){++n;}。这样调用起来就比较优雅了。
为什么可以这样用:因为在C++中,所有的运算都是通过函数实现的,比如最简单的加法也是同样的道理,把参数传递到operator+(int, int)函数里。
11.4 创建临时对象
在operator函数里创建临时对象,并返回。这样,在对象自加之后就可以被赋值了。
11.5 创建无名临时对象
这是通过构造函数与operator函数配合使用,实现了成员变量的自加。但是这种方法会牺牲速度和内存空间,因此并不可取。
11.6 取消创建临时对象
利用上this指针。
11.7 重载后置自加运算符
11.1 运算符重载
通过自加运算符,了解到只能对变量自加,而不能对对象自加。
11.2 在成员函数中实现自加
新定义一个成员函数,在成员函数内实现成员变量的自加。这种方法是可以,但是太low了。不是真正的对象自加。
11.3 重载前置自加运算符
认识一个新的关键字:operator。
用法:与运算符连用,成为运算重载函数,operator++(){++n;}。这样调用起来就比较优雅了。
为什么可以这样用:因为在C++中,所有的运算都是通过函数实现的,比如最简单的加法也是同样的道理,把参数传递到operator+(int, int)函数里。
11.4 创建临时对象
在operator函数里创建临时对象,并返回。这样,在对象自加之后就可以被赋值了。
11.5 创建无名临时对象
这是通过构造函数与operator函数配合使用,实现了成员变量的自加。但是这种方法会牺牲速度和内存空间,因此并不可取。
11.6 取消创建临时对象
利用上this指针。
11.7 重载后置自加运算符
相关文章推荐
- C语言学习笔记之数据类型
- C++用指针处理数组元素
- C++中引用详解
- va_list
- c++实验2-标准体重
- C++11智能指针之使用shared_ptr实现多态
- C语言完成2048,辣鸡代码(#滑稽#)
- C++中vector的用法
- 孙敬哲的c++上机实验2-2
- c语言实验
- C语言中从标准输入读取几行输入,并打印到标准输出上两种方法
- 孙敬哲的c++上机实验2-1
- 《Effective C++》读书笔记(第一部分)
- Item 26: 避免对universal引用进行重载
- 《高质量C/C++编程》——重载覆盖与隐藏规则
- 多重背包——(HDU-2191)
- [面试] C/C++ 语法(七)—— C++ 类型转换
- 排序算法(C语言+Python版)宝宝再也不怕面试官写排序算法了
- [面试] C/C++ 语法(六)—— RTTI(运行时类型信息)
- c++实验2-标准体重