1.当析构函数为虚函数时,其所有派生类的析构函数都将自动成为虚函数(不管是否被标记为virtual)。2.当基类的析构函数为虚函数时,如果对子类调用析构函数时,程序会先调用派生类的析构函数,然后再去调用基类的析构函数。但如果基类的析构函数不是虚函数时,那么只会调用基类的析构函数。例:class Ba...
分类:
其他好文 时间:
2014-09-17 14:51:32
阅读次数:
133
建造者模式定义一个具体的物体,是各种属性的集合。要创建该物体时,可以构建一个构造器,该构造器包含特定的构造方式,但是只提供一个接口,具体构造细节放在派生类中实现。Builder.h内容 1 #ifndef Builder_H_H 2 #define Builder_H_H 3 4 #inc...
分类:
其他好文 时间:
2014-09-16 21:58:31
阅读次数:
295
模板模式特点:提取相同的特性放在基类中,而将不同的特性作为一个借口抽象出来,放到派生类中进行具体实现。Template.h内容 1 #ifndef Template_H_H 2 #define Template_H_H 3 4 #include 5 #include 6 using names...
分类:
其他好文 时间:
2014-09-16 20:34:51
阅读次数:
203
1、C文件操作2、c++文件操作3、MFC文件操作:CFile是MFC的文件操作基本类,它直接支持无缓冲的二进制磁盘I/O操作,并通过其派生类支持文本文件、内存文件和socket文件。Visual C++处理的文件通常分为两种:文本文件:只可被任意文本编辑器读取ASCII文本。二进制文件:指对包含任...
分类:
其他好文 时间:
2014-09-13 23:58:26
阅读次数:
491
直到今日,才发现自己对重载的认识长时间以来都是错误的。幸亏现在得以纠正,真的是恐怖万分,雷人至极。一直以来,我认为重载可以发生在基类和派生类之间,例如: 1 class A { 2 public: 3 void test(int); 4 }; 5 class B : pub...
分类:
编程语言 时间:
2014-09-12 18:34:43
阅读次数:
272
继承虚函数调用 代码本文地址: http://blog.csdn.net/caroline_wendy派生类继承基类时, 使用virtual时, 会进行动态绑定, 没有virtual关键字则会覆盖.使用基类指针(Base*)指向派生类时, 调用函数, 则动态绑定的函数会调用派生类, 非动态绑定的函数调用基类.代码:/*
* main.cpp
*
* Created on: 2014.9.1...
分类:
编程语言 时间:
2014-09-12 12:01:53
阅读次数:
199
链接上一篇日志,C++学习总结2,下面介绍下C++里面的其他内容 虚函数:一个接口,多种方法。 多态:编译时的多态与运行时的多态。 编译时的多态表现为运算符的重载与函数的重载。 运行时的多态表现为使用派生类与虚函数。 虚函数需要使用关键字virtual。 指向派生类型的指针。 基类型指针与派生类指针...
分类:
编程语言 时间:
2014-09-10 23:51:21
阅读次数:
283
虚继承派生类对象的内存布局。菱形继承到底是怎么共享虚基类对象的,这里有详细讲解和代码测试。...
分类:
其他好文 时间:
2014-09-09 23:09:19
阅读次数:
441
先不要看结果,看一下你是否真正了解了this指针? 1 #include 2 using namespace std; 3 4 class Parent{ 5 public: 6 int x; 7 Parent *p; 8 public: 9...
分类:
编程语言 时间:
2014-09-09 21:20:19
阅读次数:
250
https://class.coursera.org/pkupop-001/forum/thread?thread_id=350郭天魁·6 months ago在课件中我们知道如下程序是不能编译通过的:class A{protected: int x;};class B:A{ void foo(){...
分类:
其他好文 时间:
2014-09-09 10:25:58
阅读次数:
363