1 虚函数简单应用
#include <stdio.h>
#include <iostream>
using namespace std;
class A
{
public:
A(){};
virtual void Fun()
{
cout<<"this is A";
}
};
class B : public::A
{
public:
B(int n)
{
number_=n;
}
inline void Fun()
{
cout<<"this B number:"<<number_<<endl;
}
private:
int number_;
};
class C : public::A
{
public:
C(int n)
{
number_=n;
}
inline void Fun()
{
cout<<"this C number:"<<number_<<endl;
}
private:
int number_;
};
int _tmain(int argc, _TCHAR* argv[])
{
int i;
A *a[2];
a[0]=new B(2);
a[1]=new C(3);
for (i=0;i<2;++i)
{
a[i]->Fun();
}
for (i=0;i<2;i++)
{
delete a[i];
}
system("pause");
return 0;
}
// 父类创建虚函数,必须加virtual
// 子类创建普通函数,且函数名与父类虚函数名相同
// 应用场景:应用与财务与各部门的消费/薪资统计,
//例如在子类Fun函数功能是工资统计,返回的是当前
//部门的所有消费总额,那么财务总部就可以很容易的
//知道各部门的消费情况。