C++ Primer 学习笔记_27_操作符重载与转换(2)--++/--运算符重载、!运算符重载、赋值运算符重载 、String类([]、 +、 += 运算符重载)、>>和<<运算符重载
一、++/--运算符重载
1、前置++运算符重载
成员函数的方式重载,原型为:
函数类型 & operator++();
友元函数的方式重载,原型为:
fri...
分类:
编程语言 时间:
2015-08-06 20:32:57
阅读次数:
126
C++ Primer 学习笔记_28_操作符重载与转换(3)--成员函数的重载、覆盖与隐藏、类型转换运算符、*运算符重载、->运算符重载
一、成员函数的重载、覆盖与隐藏
对于类层次的同名成员函数来说,有三种关系:重载、覆盖和隐藏,理清3种关系,有助于写出高质量的代码。
1、成员函数的重载
重载的概念相对简单,只有在同一类定义...
分类:
编程语言 时间:
2015-08-06 20:32:35
阅读次数:
95
C++ Primer 学习笔记_29_操作符重载与转换(4)--转换构造函数和类型转换运算符归纳、operator new 和 operator delete 实现一个简单内存泄漏跟踪器
一、转换构造函数
可以用单个实参来调用的构造函数定义从形参类型到该类型的一个隐式转换。如下:
class Integral
{
public:
Integral (int =...
分类:
编程语言 时间:
2015-08-06 20:30:54
阅读次数:
122
Ø 重载操作符的定义
重载操作符是具有特殊名称的函数:保留字operator
后接需定义的操作符号。像任意其他函数一样,重载操作符具有返回类型和形参表,如下语句:
Sales_item operator+(const Sales_item&, constSales_item&);
Ø 可以和不可以重载的操作符
Ø 重载操作符必须具有...
分类:
其他好文 时间:
2015-08-05 18:22:36
阅读次数:
114
20150728 星期二 上海 晴 高温
日志只是随笔摘要,供自己后续整理查看。
重载操作符
1. 重载操作符是特殊的函数,operator后加要重载的操作符,和其他函数一样,重载操作符函数也有参数和返回值。格式如下:
Data operator+(const data1&, const data2&)
2. 不可以重载的操作符:
:: .* . ?:
3. 可...
分类:
其他好文 时间:
2015-07-29 01:03:01
阅读次数:
119
什么是重载:让操作符具有自己想要的功能。#ifndef _ARRAY_H_#define _ARRAY_H_class Array{private: int mLength; int* mSpace;public: Array(int length); Array(const...
分类:
编程语言 时间:
2015-07-01 20:17:25
阅读次数:
137
看了看C#的运算符重载,发现与C++打不相同.刚刚被C#的自增操作符坑了,现在来分享一下.先定义一个类 class A { public int i; public A(int I) { i = I; }pub...
分类:
编程语言 时间:
2015-06-24 12:20:04
阅读次数:
152
在一个类型中,可以定义0个或多个以下种类的成员 常量 字段 实例构造器:将新对象的实例字段初始化为良好初始状态的一种特殊方法 类型构造器:将类型的静态字段初始为良好初始状态的一种特殊方法 方法 操作符重载 转换操作符 属性 事件 类型:类型可定义嵌套于其中的其他类型,通常用这...
分类:
其他好文 时间:
2015-06-22 17:48:58
阅读次数:
128
通过demo演示了友元函数在左移和右移运算符重载时的应用,与成员函数重载方式进行了对比,也涉及到了占位参数的使用...
分类:
其他好文 时间:
2015-06-14 09:28:43
阅读次数:
171
一、什么是操作符重载操作符重载可以分为两部分:“操作符”和“重载”。说到重载想必都不陌生了吧,这是一种编译时多态,重载实际上可以分为函数重载和操作符重载。运算符重载和函数重载的不同之处在于操作符重载重载的一定是操作符。我们不妨先直观的看一下所谓的操作符重载:#include using namesp...
分类:
编程语言 时间:
2015-06-07 23:20:28
阅读次数:
207