码迷,mamicode.com
首页 > 编程语言 > 详细

C++_01_入门

时间:2014-10-02 17:36:23      阅读:267      评论:0      收藏:0      [点我收藏+]

标签:c++      多态   继承   cpp   

一、类的定义
Person.h类声明
bubuko.com,布布扣
Person.cpp类实现
bubuko.com,布布扣
main.cpp主函数
bubuko.com,布布扣
二、命名空间的使用
bubuko.com,布布扣
bubuko.com,布布扣

Xcode格式化代码:快捷键ctrl + i

主函数:
bubuko.com,布布扣
bubuko.com,布布扣
三、类的继承
父类Person
bubuko.com,布布扣
bubuko.com,布布扣
子类Girl

 Java PHP中使用关键定extends

 c++ 冒号表示继承,Objective-C 一样

 冒号后面的public表示,继承过来的东东 公开

bubuko.com,布布扣
bubuko.com,布布扣
主函数main.cpp
bubuko.com,布布扣
四、构造和析构方法
类Object
bubuko.com,布布扣
bubuko.com,布布扣
main.cpp主函数
bubuko.com,布布扣
五、执行父类的【构造方法
父类Person
bubuko.com,布布扣
bubuko.com,布布扣
子类Girl
bubuko.com,布布扣

// 调用父类 的构造方法 cpp是通过冒号实现

// JavaObjective-C 是通过 super关键字

// PHP使用parent关键字

bubuko.com,布布扣
main.cpp主函数
bubuko.com,布布扣
六、调用父类的方法
C++由于没有super关键字,因此,通过【父类名::方法()】调用某个父类的方法

C++还可以指定 调用哪一级父类的方法

// 由于c++没有super关键字,所以调用父类的方法:用的是【父类名::方法()

// 好处就是,不管有多少重继承,都可以通过 父类名 去指定调用某一级的父类 的方法;

因此,比Java中的super关键字要强大

bubuko.com,布布扣
父类Person
bubuko.com,布布扣
bubuko.com,布布扣
子类Girl
bubuko.com,布布扣
bubuko.com,布布扣
七、实函数、虚函数、纯虚函数、函数重载

C++中,由于父类和子类都实现了cry方法【实函数】,

因此,只会调用父类的cry方法

     如果,想要实现Java中的多态效果,

     那么必须把【父类和子类】的cry方法 全部用virtual关键字 声明为【虚函数】


另外,C++纯虚函数,类似Java中的抽象方法,由不同的子类去实现

父类Person
bubuko.com,布布扣
bubuko.com,布布扣
子类 Girl
bubuko.com,布布扣
bubuko.com,布布扣
main.cpp主函数
当父类和子类 都实现了【实函数cry】时的情况:直接调用父类的cry
bubuko.com,布布扣
当父类和子类的cryy方法都用【virtual】关键字声明时,
与Java多态一样,调用子类的方法
bubuko.com,布布扣
纯虚方法

// 纯虚函数,类似Java中的抽象方法,由不同的子类去实现

virtual void hobby()=0;

bubuko.com,布布扣
八、C++中的类,如果所有方法全是纯虚函数,那么就是纯虚类;
相当于Java中的接口;由于C++本身支持多继承,因此,在使用时,尽量按照Java中的【单继承实现多接口原则】,将其他父类设计成【纯虚类】
九、函数重载,即名称一样,参数列表不同



















C++_01_入门

标签:c++      多态   继承   cpp   

原文地址:http://blog.csdn.net/pre_eminent/article/details/39735751

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!