1、阅读下面的程序,并写出运行结果
(3)纯虚函数
#include
using namespace std;
class Base
{
public:
virtual void Who() =0;
};
class FirstDerived:public Base
{
public:
void Who() { cout<<"F"; }
};
cl...
分类:
编程语言 时间:
2015-05-27 10:04:38
阅读次数:
116
多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphism),字面意思多种形状。虚函数是在基类中被声明为virtual,并在派生类中重新定义的成员函数,可实现成员函数的动态覆盖(Override)。包含纯虚函数的类称为抽...
分类:
编程语言 时间:
2015-05-27 00:40:45
阅读次数:
226
虚函数(转载)一般继承(无虚函数覆盖)下面,再让我们来看看继承时的虚函数表是什么样的。假设有如下所示的一个继承关系:请注意,在这个继承关系中,子类没有重载任何父类的函数。那么,在派生类的实例中,其虚函数表如下所示:对于实例:Derive d; 的虚函数表如下:我们可以看到下面几点:1)虚函数按照其声...
分类:
其他好文 时间:
2015-05-26 20:25:02
阅读次数:
100
C++明确指出:当派生类对象是由一个基类指针释放的,而基类中的析构函数不是虚函数,那么结果是未定义的。其实我们执行时其结果就是:只调用最上层基类的析构函数,派生类及其中间基类的析构函数得不到调用。 1 #include 2 3 using namespace std; 4 5 class Ti...
分类:
其他好文 时间:
2015-05-24 17:01:51
阅读次数:
126
在继承中,分为两类函数:virtual和non-virtual。而重新定义一个非虚函数是不好的(条款36),那么以下的讨论就是如何定义继承而来的虚函数。强调:虚函数是动态绑定的,而缺省参数值是静态绑定的。 1 #include 2 3 class Shape 4 { 5 public: 6 ...
分类:
其他好文 时间:
2015-05-24 12:54:55
阅读次数:
195
1 #include 2 3 using namespace std; 4 5 class Base 6 { 7 public: 8 void mf(); 9 };10 void Base::mf()11 {12 cout mf(); // 调用Base:...
分类:
其他好文 时间:
2015-05-24 11:23:12
阅读次数:
74
? 此例中混合了纯虚函数、虚函数、非虚函数等,只是为了强调隐藏的是继承而来的名字,至于名字代表的是什么并不重要,即使enum、nested class、typedef也不例外。 1 #include 2 3 using namespace std; 4 5 class Base 6 { 7 p...
分类:
其他好文 时间:
2015-05-24 10:08:43
阅读次数:
102
??
//C++ 虚函数、静态联编和动态联编、抽象类
#include
#include
using namespace std;
class People
{
private:
string name;
int age;
public:
People(string name_, int age_):name(name_), age(age_){}
...
分类:
编程语言 时间:
2015-05-23 11:30:29
阅读次数:
165
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。
关于虚函数的使用方法,我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中,我只想从虚函数的实现机制上面为大家 一个清晰的剖析。
当然...
分类:
编程语言 时间:
2015-05-22 13:32:26
阅读次数:
205
下面是一个用来塑模股市交易的类: derived的类的构造函数被调用,但是首先得调用基类Transaction的构造函数,但是在后面还得调用virrual函数,这个时候子类的对象的构造还没有完成,那么虚函数也就没有意思,也就可以说虚函数现在还不是虚函数,在derived class对象构造期间,对象...
分类:
其他好文 时间:
2015-05-22 13:01:45
阅读次数:
134