ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Essential C++ 读书笔记 Ch4

2021-10-19 21:02:48  阅读:166  来源: 互联网

标签:function const 读书笔记 object Essential member Ch4 copy class


4 基于对象的编程风格

4.1 实现class

所有member function都必须在class主体内进行声明。至于是否要同时进行定义,可以自由决定。
class名称之后的两个::即所谓class scope resolution运算符(类域作用解析)。

4.2 构造函数和析构函数

member initialization list

是构造函数特有的语法,在开始执行函数体之前就为成员变量赋初始值。

destructor

其名称有严格规定:class名称加上~前缀。它绝不会有返回值,没有任何参数,绝不能重载。

成员逐一初始化

如果有必要为某class设计copy constructor,那么也同样要为他编写copy assignment operator

4.3 mutable 和 const

没有一个const reference class参数可以调用公开接口的non-const成分
将某变量标识为mutable,意味着宣传对其做出改变不改变class object的常量性。

4.4 this

this指针系在member function内用来指向其调用者(一个对象)。编译器自动将this指针加到每一个member function的参数列表。

4.5 静态类成员

static data member用来表示唯一的、可以共享的member
static member function 可以在“与任何对象都毫无瓜葛”的情况下被调用。
待完善

4.6 打造 iterator class

4.7 友元

任何class都可以将其他function或class指定为friend,而friend具备了与class member function相同的访问权限,可以访问class的private member。

4.8 实现copy assignment operator

4.9 实现function object

lt(ival)中,lt可能是函数名称,可能是函数指针,也可能是一个提供了function call 运算符的function object。

标签:function,const,读书笔记,object,Essential,member,Ch4,copy,class
来源: https://www.cnblogs.com/wstnl/p/15426442.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有