C++语言中类、继承、多态等的用法?

时间:2011-12-13 15:12:37
【文件属性】:

文件名称:C++语言中类、继承、多态等的用法?

文件大小:5KB

文件格式:JPG

更新时间:2011-12-13 15:12:37

C++

类是面向对象语言必须提供的用户定义的数据类型,它将具有相同状态、操作和访问机制,多个对象抽象成为一个对象类。 类的一般定义格式如下: class <类名> { private:    <私有数据成员和成员函数>; protected:    <保护数据成员和成员函数>; public:    <公有数据成员和成员函数>; } <各个成员函数的实现>; 继承是面向对象设计的基本特征之一,是从已有的类基础上建立新类。通过C++语言中的继承机制,一个新类既可以共享另一个类的操作和数据,也可以在新类中定义已有类中没有的成员。 class CBase { public: void FuncA(void); void FuncB(void); }; //派生类 class CDerive :public CBase { public: void FuncC(void); void FuncD(void); }; //实例主程序 main() { CDerive b; // CDerive的一个对象 b.FuncA();// CDerive从CBase继承了函数FuncA b.FuncB();// CDerive从CBase继承了函数FuncB b.FuncC(); b.FuncD(); } C++的另一个重要的特征是支持多态。所谓多态性是指当不同的对象收到相同的消息时,产生不同的动作。 class CBase { public: virtual void FuncA(void){cout<<”This is CBase ::FuncA\n”} //用关键字virtual声明一个虚函数 }; void Test(CBase *a) { a->FuncA(); } class CDeriveA :public CBase { public: virtual void FuncA(void){cout<<”This is CDeriveA::FuncA\n”} }; class CDeriveB :public CBase { public: virtual void FuncA(void){cout<<”This is CDeriveB::FuncA\n”} };


网友评论