今天晚上回到小区门口,买了点冬枣,要结账的时候想起来,钥匙没带,落公司了! TNND,没办法再回趟公司,拿了钥匙,来回一个小时,汗~ 条款10:令operator=返回一个reference to *this 即赋值操作符返回引用。 原型 Object& operator=(const Object ...
分类:
其他好文 时间:
2016-09-27 00:30:03
阅读次数:
128
条款05:了解C++默默编写并调用哪些函数 如果没有为类定义构造函数、析构函数、拷贝构造函数、重载赋值操作符,并且这些函数被需要(调用)时,编译器会为类生成默认的函数,而这些函数是public inline的。 需要主意的是带引用成员的类和带const成员的类。 带引用成员的类,如果不为其主动编写o ...
分类:
其他好文 时间:
2016-09-22 00:55:12
阅读次数:
126
事实上,我们的重载运算符返回void、返回对象本身、返回对象引用都是可以的,并不是说一定要返回一个引用,只不过在不同的情况下需要不同的返回值。 那么什么情况下要返回对象的引用呢? 原因有两个: 允许进行连续赋值 防止返回对象(返回对象也可以进行连续赋值)的时候调用拷贝构造函数和析构函数导致不必要的开 ...
分类:
编程语言 时间:
2016-09-14 12:32:22
阅读次数:
324
哪些函数不能被继承: 构造函数、析构函数、拷贝构造函数、赋值操作符重载函数(赋值构造函数) 哪些函数不能为虚函数:(定义虚函数一般是为了使用多态性质) 普通函数(非成员函数):不属于类的成员,不能用于多态,只能被重载。 静态成员函数:静态成员函数属于类的信息,被所有对象共享,不归某个对象所有,没有动 ...
分类:
其他好文 时间:
2016-09-07 22:36:38
阅读次数:
193
1.什么是复制构造函数 复制构造函数:是构造函数,其只有一个参数,参数类型是所属类的类型,且参数是一个const引用。 作用:将本类的成员变量赋值为引用形参的成员变量。 2.什么是赋值操作符 赋值操作符:返回值是本类的引用类型,参数类型是所属类的类型,且参数是一个const引用。 作用与复制构造函数 ...
分类:
编程语言 时间:
2016-09-07 01:07:02
阅读次数:
163
String类: 一 []运算符的重载 []运算符的使用可能有以下几种情况: 对于1和2的情况,需要重载: 返回引用是为了可以实现情况2。 对于const String,3允许但4不允许,所以要返回const string& 二 +运算符的重载 为了允许情况2,+运算符需要重载为友元,同时还要有一个 ...
分类:
其他好文 时间:
2016-09-02 11:18:22
阅读次数:
175
左值和右值的区别:左值就是在赋值中可以放在赋值操作符两边的值,比如: int a = 1; double b = 2.0 a = b; b = a; 这里a和b都是左值,一切变量都是左值,但const量是例外。 而右值则是只可以放在赋值操作符右边的值,比如: int a = 0; char *b = ...
分类:
编程语言 时间:
2016-08-29 06:50:00
阅读次数:
251
1、复合赋值操作符:*= /= %= += -= 2、while语句语法 while(booleanExpression) statement 先求booleanExpression(布尔表达式,注意必须放在圆括号中),如果为true,就运行语句。再次求booleanExpression,扔为tru ...
分类:
其他好文 时间:
2016-08-18 21:18:52
阅读次数:
121
copy()
copy_backward()
以上两个对所有容器都适用的
注意:
1, 没有copy_if()算法,可以使用remove_copy_if()算法;
2,复制过程中要逆转元素次序,使用reverse_copy()算法;
3,把容器内所有元素赋值给另一个容器,要使用赋值操作符或者容器的assign()成员函数;
4,复制过程中删除某些元素,使用remove_copy()和...
分类:
编程语言 时间:
2016-08-17 00:14:41
阅读次数:
279
这个时候is是经过函数参数传过来的,其实本质上不会随着函数的结束而灭亡,所以是要返回的,但是有的却不是这样,局部引用用完后销毁掉的,所以就不能作为返回值的。 char get() const函数是一个常成员函数,他只能访问类成员而不能去改变成员的值呀。除非成员定义成mutable,否则真是没办法的事 ...
分类:
其他好文 时间:
2016-08-10 20:57:13
阅读次数:
229