您的位置:首页 > 其它

这个设计有点怪!

2011-12-18 22:26 204 查看
#include "stdafx.h"

#include <string>

#include <iostream>

using namespace std;

class Base

{

public:

Base();

virtual void DisPaly() = 0;

};

Base::Base()

{

}

class ManA : public Base

{

public:

ManA();

ManA(string name,string sex,int old);

virtual void DisPaly();

friend class Show;

private:

string name;

string sex;

int old;

};

ManA::ManA(string name,string sex,int old)

:name(name)

,sex(sex)

,old(old)

{

}

void ManA::DisPaly()

{

cout<<"ManA--name:"<<name<<endl;

cout<<"ManA--sex:"<<sex<<endl;

cout<<"ManA--old:"<<old<<endl;

}

class ManB : public Base

{

public:

ManB();

ManB(string name);

virtual void DisPaly();

friend class Show;

private:

string name;

};

ManB::ManB()

{

}

ManB::ManB(string name)

:name(name)

{

}

void ManB::DisPaly()

{

cout<<"ManB--name:"<<name<<endl;

}

class Show

{

public:

void DisPlay(Base &base);

};

void Show::DisPlay(Base &base)

{

base.DisPaly();

}

int _tmain(int argc, _TCHAR* argv[])

{

ManA man("lhy","man",26);

ManB B("lhy_class_B");

Show infoShow;

infoShow.DisPlay(man);

infoShow.DisPlay(B);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐