Sollyu

  • 捐赠
  • 关于
  1. 首页
  2. 原创文章
  3. 正文

C++学习笔记二

2014年5月27日 3760点热度 0人点赞 0条评论

在写程序定义类时生成不要忘记了花括号后边的分号,这是定义不是函数

类与结构体:

C中的结构体不能定义函数,而C++中的结构体可以定义函数,结构体是一种特殊的类。

二者的不同体现在对于成员变量的权限控制上。结构体的变量默认权限是public,类默认权限为private。

访问控制权限的类别:private \ public \ protected。

C++的特性

类与对象

类是比较抽象的,而对象是具体存在的。对象是类的实例化。

构造函数和析构函数

每个类都需要有构造函数和析构函数,分别在实例化类的过程中进行类内部成员变量的初始化和销毁。构造函数可以重载为有参数的(依然无返回值),但析构函数没有参数,没有返回值。

重载

函数的参数类型、参数个数不同时,才能构成函数的重载。只有返回类型不同,不能构成重载,并且有默认参数的函数也不能重载。

继承

基类(父类)和派生类(子类)。子类可以很好的继承父类定义的成员变量和函数。可以多重继承,但是要考量各个基类是否有先后顺序。

多态

C++的多态是通过虚函数来实现的。这个多态性是通过迟绑定技术实现的。需要在基类的函数前加上virtual关键字。在子类中如果有对父类中虚函数的覆盖定义,则无论该覆盖定义是否有virtual关键字,都是虚函数。

派生类函数的覆盖和隐藏其实没有太复杂,覆盖是发生在派生类和基类之间的,两个必须完全相同,并且都是虚函数。若不是如此,就是隐藏(类似于局部性变量和全局变量的相互屏蔽关系)

引用

引用多数用在函数的形参上面,变量本身就是自己的一个引用 。

设计类的习惯

通过把类的定义及类成员函数的声明放在头文件中,将类中成员函数的实现放在源文件中,最后再加一个主函数文件。为了避免类的重复定义,可以加入条件预处理指令。

/*
#ifndef  VC++程序编译链接的原理与过程
#define VC++程序编译链接的原理与过程
#endif
*/

C++学习笔记二

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: VC++ 笔记
最后更新:2014年5月27日

sollyu

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2021 sollyu.com. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

苏ICP备15007531号