C++学习(3)--基础知识(3)--关于操作符的重载
来源:互联网 发布:彩票软件源码 编辑:程序博客网 时间:2024/05/15 00:08
只是看了点皮毛,自觉地要点有几条:
1.目的是使对对象的操作和对象之间的操作更自然,更方便.使其直接运用在表达式中。
2.如果不太会写,先写一个仿操作符的函数,比如sum(),然后将函数名改为operator+
3.return的值就是操作符两边的元素经过操作符作用后的结果.
1.目的是使对对象的操作和对象之间的操作更自然,更方便.使其直接运用在表达式中。
2.如果不太会写,先写一个仿操作符的函数,比如sum(),然后将函数名改为operator+
3.return的值就是操作符两边的元素经过操作符作用后的结果.
以上几条针对“+”“-”“*”“/”“〉=”“〈=”“==”等运算符来说应该可以了。剩下的就是输入输出的运算符重载
(怎么重载为成员函数呢? )
将iostream运算符重载:
ostream& operator<<( ostream &os, const xxx &x)
{
os<<x.out();
return ;
}
(怎么重载为成员函数呢? )
将iostream运算符重载:
ostream& operator<<( ostream &os, const xxx &x)
{
os<<x.out();
return ;
}
4.从语法上讲,运算符可以定义为全局函数,也可以定义为成员函数。大致的规则
=,(),[],-〉这四个运算符只能重载为成员函数。所有的一元函数,+=,-=,/=,*=,&=,|=,~=, %=,>>=,<<=以及所有其他运算符都建议重载为成员函数(摘自高质量c++编程)
=,(),[],-〉这四个运算符只能重载为成员函数。所有的一元函数,+=,-=,/=,*=,&=,|=,~=, %=,>>=,<<=以及所有其他运算符都建议重载为成员函数(摘自高质量c++编程)
5.《高》中建议不要过分热心地使用,如果它不能使代码变得更加易读易写,那就别用,否则会自找麻烦。
6.出于安全考虑,有些运算符不允许被重载,不常见,不列了。
7.对已经存在的运算符进行重载时,不能改变优先级规则,否则将引起混乱。
- C++学习(3)--基础知识(3)--关于操作符的重载
- c++之基础知识(2)重载 操作符重载
- 重载操作符的学习(一)
- C++基础知识-操作符重载
- 操作符重载(C++)
- 关于操作符重载
- 关于重载操作符
- C++primer学习:重载运算符(3)
- 关于操作符重载的小总结
- 关于操作符“>>”和“<<”的重载
- C#关于操作符的重载
- 关于 操作符“<<”和“>>”重载的心得
- 关于c++ new操作符的重载
- C++【操作符重载】
- c++::操作符重载
- C++:操作符重载
- C++(26)重载操作符的定义
- c++string类的操作符重载
- STL简介, 标准模板库
- C++学习(2)--基础知识(2)--指针复习
- 学汇编的方法
- C*O的含义
- System.String.Format
- C++学习(3)--基础知识(3)--关于操作符的重载
- CIH病毒1.4版本之中文注释
- JDK6的新特性之十二:脚本语言支持(Scripting)
- 《C#和NET学习的总结(一)--数据类型》
- C++学习(4)--基础知识(4)--关于const
- C++语言常见问题解
- 强大的安全工具 杀毒软件小红伞试用测评
- C++学习(5)--转向effective c++
- JavaScript使用手册、范例