关闭

C++总结—面向对象

标签: c++classctablejava
334人阅读 评论(0) 收藏 举报
分类:

C++很多时候被认为是“C with Class”,事实上,C++引入了完整的面向对象思想,并且为支持这种思想增加了很多基础结构。


类与结构体

C++中的类和结构体是非常相似的。


C++的继承

C++中没有接口的关键字,但是有接口的思想。事实上一个纯虚函数就是一个接口。正因为没有接口的概念,所以,C++没有实现(implements)这种说法,它所具有的只有继承。与Java不一样,C++支持多继承。既C++的继承分为单继承和多继承2种方式,对于单继承,派生类只有一个基类;对于多继承,派生类通常是从多个基类派生出来的。其格式为:

单继承格式:class 派生类名:继承方式 基类名

     多继承格式:class 派生类名:继承方式1 基类名1,……,继承方式n 基类名n


除了单继承与多继承外,C++的继承里还有公共继承(public)、保护继承(protected)和私有继承之分。具体可见下表:

    派生类成员访问属性

基类成员访问属性

继承方式

public

protected

private

public

public

protected

private

protected

protected

protected

private

private

在派生类中隐藏

在派生类中隐藏

在派生类中隐藏


另外,C++中还有虚继承的概念:

class 派生类名:virtual 继承方式 基类名 



C++的多态

C++利用虚表(Virtual Table)来实现多态。既实用关键字Virtual来表示该成员函数是可以被子类复写的。




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:110914次
    • 积分:1581
    • 等级:
    • 排名:千里之外
    • 原创:49篇
    • 转载:2篇
    • 译文:8篇
    • 评论:15条
    最新评论