精品一区二区三区影院在线午夜_天天躁日日躁狠狠躁AV麻豆_国产午夜福利短视频_中文字幕乱偷无码AV先锋蜜桃_久久精品一二区东京热_国产成人亚洲日韩欧美久久久,国产成人精品久久一区二区三区

C++ 接口的實現方式

一、接口的定義

  有時候,我們得提供一些接口給別人使用。接口的作用,就是提供一個與其他系統交互的方法。其他系統無需了解你內部細節,并且也無法了解內部細節,只能通過你提供

給外部的接口來與你進行通信。根據c++的特點,我們可以采用純虛函數的方式來實現。這樣做的好處是能夠實現封裝和多態。現舉一實例,供大家參考。(不想做過多說明,

大家一看就應該能夠明白)

Class IPerson

{

public:

IPerson(){};

virtual ~IPerson()=0;//注意,最好要定義此虛析構函數,能夠避免其實現不能正常調用析構函數的問題

//提供給外面使用的接口一般采用純虛函數

virtual void SetName(const string &strName)= 0;

virtual const string GetName()= 0;

virtual void Work()= 0;

}

二、接口實現

實現接口是通過繼承接口的子類來實現的,不同的子類可以實現不同效果,即使所謂多態。

Class CTeacher:public IPerson

{

public:

CTeacher(){};

virtual ~CTeacher();

string m_strName;

void SetName(const string &strName);

const string GetName();

void Work();

}

CTeacher::SetName(const string &strName)

{

m_strName = name;

}

const string CTeacher::GetName()

{

return m_strName;

}

void CTeacher::Work()

{

cout <<"I am teaching!"<<endl;//老師的工作是教書,其他職業的人做的工作是不一樣的。

}

府谷县| 石河子市| 绍兴县| 越西县| 合肥市| 高唐县| 剑川县| 湄潭县| 仪陇县| 潼南县| 开封县| 济南市| 厦门市| 珲春市| 大丰市| 板桥市| 永吉县| 贺兰县| 阜南县| 金门县| 延津县| 双峰县| 陇南市| 赫章县| 天门市| 铁岭县| 精河县| 湄潭县| 固阳县| 嵩明县| 台南市| 博罗县| 开平市| 庆阳市| 天峻县| 蒲城县| 蓝田县| 屏山县| 丹阳市| 颍上县| 汉寿县|