前一小节《容器与继承》http://blog.csdn.net/thefutureisour/article/details/7744790提到过:对于容器,假设定义为基类类型,那么则不能通过容器訪问派生类新增的成员;假设定义为派生类类型,一般不能用它承载基类的对象,即使利用类型转化强行承载,则基类...
分类:
其他好文 时间:
2014-08-21 09:40:53
阅读次数:
264
非常好的一篇分析const的总结归纳, 在此谢谢原作者:http://blog.csdn.net/zcf1002797280/article/details/7816977在普通的非 const成员函数中,this的类型是一个指向类类型的 const指针。可以改变this所指向的值,但不能改变 th...
分类:
编程语言 时间:
2014-08-18 12:16:04
阅读次数:
203
转自:http://www.cnblogs.com/ronny/p/3734110.html
对于部分内容会在接下来的文章中详细介绍
1,什么是类的拷贝控制
当我们定义一个类的时候,为了让我们定义的类类型像内置类型(char,int,double等)一样好用,我们通常需要考下面几件事:
Q1:用这个类的对象去初始化另一个同类型的对象。
Q2:将这个类的对象赋值给另一个同类型的对象。
...
分类:
编程语言 时间:
2014-08-16 21:07:53
阅读次数:
378
定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。类型:创建型模式分类: 简单工厂模式,它的主要特点是需要在工厂类中做判断,从而创造相应的产品。当增加新的产品时,就需要修改工厂类。有点抽象,举个例子就明白了。有一家生产处理器核的厂家,它只有一个工厂,....
分类:
编程语言 时间:
2014-08-16 16:19:00
阅读次数:
315
①T *p =new T;
②T *p =new T();
这两类用法不同点的总结。
1.若T为类类型,且用户定义了构造函数,则两种形式的效果完全相同,都会调用这个定义了的构造函数来初始化内部成员变量,但是如果此构造函数中并未对成员变量初始化,则这个时候内部的成员变量进行默认初始化——值是未定义的。
2.若T为类类型,但是用户并没有定义任何构造函数,则我们可以知道编译器会为该类合成一...
分类:
编程语言 时间:
2014-08-16 15:09:40
阅读次数:
231
定义:为创建一组相关或相互依赖的对象提供一个接口,并且无需指定他们的详细类。类型:创建类模式类图:抽象工厂模式与工厂方法模式的差别 抽象工厂模式是工厂方法模式的升级版本号,他用来创建一组相关或者相互依赖的对象。他与工厂方法模式的差别就在于,工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则是针对...
分类:
其他好文 时间:
2014-08-14 19:30:39
阅读次数:
176
最近重新看了遍基类指针、引用的相关知识点,一直在想 ,如果派生类不是公有继承,那么用基类指针、引用指向该派生类对象时会发生什么?派生类内的成员的访问权限会不会发生什么变化?
结果实验表明,系统不支持此类类型转换。基类指针、引用不能指向继承方式为protected与private的派生类对象。
假设我们有以下类:
class A
{
public:
int publi;
protecte...
分类:
其他好文 时间:
2014-08-14 14:15:08
阅读次数:
522
分析问题 在程序中,类型转换无处不在,数组类型也不例外。对于普通的类型,子类对象可以隐式地转换为父类类型,所有的数组类型都继承自System.Array类型,不存在相互间的关系,但隐式转换仍然被允许,其机制如下: 1、包含值类型项目的数组不能隐式地转换成其他任何类型。 2、两个数组类型能够相互...
分类:
其他好文 时间:
2014-08-14 08:13:48
阅读次数:
235
new与malloc的不同:
1、malloc是函数,而new是运算符
2、malloc不在编译器的管辖范围内、无法执行构造函数与析构函数
3、new实际上使用了malloc函数、new实际上等价于malloc函数+构造函数的执行;delete类似
4、new返回的是类类型、malloc返回的是void*
5、其它………………...
分类:
其他好文 时间:
2014-08-13 14:57:26
阅读次数:
190
操作符的重载有一定的规则,而IO操作符必须重载为普通函数,且应该声明为类的友元函数。我试了,非友元也可以,但是必须提供访问成员变量的函数,所以,出于效率的考虑还是应该定义为友元。规则如下:1. 重载操作符必须具有一个类类型或枚举类型操作数。这条规则强制重载操作符不能重新定义用于内置类型对象的操作符的...
分类:
编程语言 时间:
2014-08-12 18:10:44
阅读次数:
272