c++笔记

作者: 我永远喜欢高木同学 | 来源:发表于2019-01-09 17:06 被阅读0次

引用:

相当于对象或变量的别名,声明的时候需要直接进行初始化。

堆与栈:

栈:函数参数、局部变量由编译器负责回收

堆:动态分配的内存块,由程序员进行释放,程序结束系统进行回收

      内存泄漏问题:需要用free、delete进行删除

指针:* & 分别记为取值和取地址

重载:

类与对象:

类的定义一般放在.h中类的实现一般放在.cpp

类外定义成员函数:

                          返回类型 类名::成员函数名(参数)

                          {

                            实现体;

                          }

                          显式定义:在上述结构前冠以关键字inline

private的内容一般由public的成员函数来访问

构造函数:

    一般应该被声明为public类型

    带缺省参数的构造函数可在形参后面直接赋值,所赋值直接为缺省值(缺省值的定义应当在无缺省值的右边)另外要防止二义性的出现

    拷贝构造函数:其形参为类的引用,系统会产生缺省的拷贝构造函数功能。

                  拷贝构造函数仅在以下三种情况下被调用:1.用一个对象初始化另一个对象时 2.一个对象被作为函数的参数时 3.当对象作为函数值返回时

      系统会尝试将含有一个参数的构造函数自动进行类型转换,若存在二义性则放弃

析构函数:

    一个类中只能定义一个析构函数,当用到动态内存时要用delete对内存进行释放,析构函数释放的空间是构造函数分配的,不是new出来的

指向对象的指针成员:

                            对象指针名->成员名

                            等价于

                            (*对象指针名).成员名

                            this一般指向正在操作的对象

前向引用:

在完成对整个类的定义之前不能定义对象,但可以经过前向引用声明,声明对象引用

静态成员:

需要在类外进行定义和初始化,并且不需创建对象。

静态成员函数只能引用属于该类的静态数据成员或静态成员函数

类指针

继承与派生

私有继承:

共有继承::或:public

protected可以被派生类调用 不能被具体的对象调用

子类继承父类出构造和析构之外的所有成员

派生类的构造函数除了初始化自己的数据成员外,还须初始化调用基类的数据成员(如果类中含有基类对象的话)

派生的构造函数: 派生类名(基类形参,...本类形参):基类名1(参数),基类名2(参数),...<子对象名>(<参数表>)

{

    本类成员初始化赋值;

}

访问声明:针对私有派生

访问声明不应声明加类型、也不应说明函数的参数

只能改变保护段和公有段的成员在派生类中的访问域,且不能改变基类中的可访问性

多继承:

二义性问题,成员的访问权限并不能区分有二义性的同名成员

虚基类:

用于有共同基类的场合

虚基类的构造函数只会被调用一次

相关文章

网友评论

      本文标题:c++笔记

      本文链接:https://www.haomeiwen.com/subject/ulmgrqtx.html