转载:http://blog.chinaunix.net/uid-25544300-id-3236826.html部分修改,感谢博主!在 某些类里声明纯虚析构函数很方便。纯虚函数将产生抽象类——不能实例化的类(即不能创建此类型的对象)。有些时候,你想使一个类成为抽象类,但刚好又没有 任何纯虚函数。怎...
分类:
其他好文 时间:
2014-08-27 15:57:47
阅读次数:
218
1.静态联编,是程序的匹配,连接在编译阶段实现,也称为早期匹配。重载函数使用静态联编。
2.动态联编是指程序联编推迟到运行时进行,所以又称为晚期联编。switch语句和if语句是动态联编的例子。
#include
void go(int num)
{
}
void go(char *str)
{
}
//class
//::在一个类中
class A
{
public:
voi...
分类:
其他好文 时间:
2014-08-27 14:48:28
阅读次数:
212
总结 ????虚基类? ????1, 一个类可以在一个类族中既被用作虚基类,也被用作非虚基类。? ????2, 在派生类的对象中,同名的虚基类只产生一个虚基类子对象,而某个非虚基类产生各自的子对象。? ???...
分类:
其他好文 时间:
2014-08-11 18:19:52
阅读次数:
407
1.多态在面向对象语言中,接口的多种不同实现方式即为多态。多态是指,用父类的指针指向子类的实例(对象),然后通过父类的指针调用实际子类的成员函数。在Java中,没有指针,就直接用父类实例化子类对象多态性就是允许将子类类型的指针赋值给父类类型的指针,多态是通过虚函数实现的,多态可以让父类的指针有“多种...
分类:
其他好文 时间:
2014-08-04 17:00:37
阅读次数:
259
虚函数是C++中实现多态的一种方法,父类A的一个函数声明为虚函数,在子类B中覆盖定义之后,当在调用的时候使用A*a=new B(),此时调用对应的那个虚函数的名字,则会执行B中的函数。当父类中没有定义虚函数的实体时候,virtual void foo()=0;这个函数就是一个纯虚函数,对应的父类就是...
分类:
编程语言 时间:
2014-07-31 20:40:37
阅读次数:
251
c++纯虚函数是C++面向对象设计的重要组成部分。纯虚函数在函数参数后边添加“=0”实现。class Test{ ... void virtual Fun() =0; ... }上述Fun函数是纯虚函数,拥有纯虚函数的类是抽象类,不能实例化,如Test这让人想起C#或者Jav...
分类:
编程语言 时间:
2014-07-31 12:16:56
阅读次数:
227
转换和继承,虚函数
Understanding conversions between base and derived classes is essential to
understanding how object-oriented programming works in C++.
理解基类和派生类之间的转换是必不可少的 理解面向对象编程在。
Like built-i...
分类:
编程语言 时间:
2014-07-24 10:26:53
阅读次数:
488
#include#includeusing namespace std;class A{public: virtual void fun1()=0; //纯虚函数 virtual void fun1(){coutfun1(); b->fun2(); return 0;}结果:B::fun0B:...
分类:
编程语言 时间:
2014-07-23 15:05:16
阅读次数:
179
《C++ Primer Plus》学习笔记8
第13章 类继承
主要内容:
①is-a关系继承
②如何以公有的方式从一个类派生到另一个类
③保护访问
④构造函数成员初始化列表
⑤向上和向下强制转化
⑥虚拟成员函数
⑦早期(静态)联编和晚期(动态)联编
⑧抽象基类
⑨纯虚函数
⑩何时以及如何使用公有继承
1、一个简单的基类
从一个类派生出另一个类时候,原始类称...
分类:
编程语言 时间:
2014-07-22 22:39:14
阅读次数:
246
为了访问公有派生类的特定成员,可以通过讲基类指针显示转换为派生类指针。也可以将基类的非静态成员函数定义为虚函数(在函数前加上virtual) 1 #include 2 using namespace std; 3 4 class base{ 5 public: 6 /*virtual*/ ...
分类:
其他好文 时间:
2014-07-17 18:04:41
阅读次数:
300