C++ primer 读书笔记(第7章)类

1.struct是public的,class是private的   class和struct定义类的唯一区别就是默认的访问权限。

2例子:进入房子,能看到桌子椅子,但是实例看不到,this时刻指向这个实例本身。

3.指向常量的指针不能用于改变其所指对象的值,要想存放常量对象的地址,只能使用指向常量的指针。

允许把指针设置为常量,常量指针必须初始化,把*放在const之前,用以说明指针是一个常量,即不便的是指针本身的值,而非指向的那个值。

4.使用const的成员函数叫做常量成员函数。 

5.read和print函数分别接受一个各自io类型的引用作为其参数,这是因为io类属于不能拷贝的类型,因为我们只能通过引用来传递他们。

在C++语言中,建议使用引用类型的形参代替指针。使用引用避免拷贝。如果函数无需改变引用形参的值,最好将其声明为常量引用。

6.类可以允许其他类或者函数访问它的非公有成员,方法是令其他类或者函数成为他的友元,需要增加一条以friend关键字开头的函数声明。

友元声明只能出现在类定义的内部。

7.我们可以在类的内部把inline作为声明的一部分显示地声明成员函数,同样的,也能在类的外部用inline关键字修饰函数的定义。

8.我们希望修改类的某个数据成员,即使是在一个const成员函数内,我们可以通过在变量的声明中加入mutable关键字。一个可变数据成员永远不会是const,

9.一个const成员函数如果以引用等待形式返回*this,那么它的返回类型将是常量引用。

10.每个类负责控制自己的友元类和友元函数。

11.如果成员是const、引用,或者属于某种未提供构造函数的类类型,我们必须通过构造函数初始值列表为这些成员提供初值。

12.类的静态成员存在于任何对象之外,对象中不包含任何与静态数据成员有关的数据。静态成员函数也不与任何对象绑定在一起,他们不包含this指针。静态成员函数不能声明成const型的,而且我们也不能在static函数体内使用this指针。

13.和类的所有成员一样,当我们指向类外部的静态成员时,必须指明成员所属的类名,static关键字只能出现在类内部的声明语句中。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值