[C++ Primer] 第7章: 类】的更多相关文章

术语表 第 7 章 类 抽象数据类型(abstract data type): 封装(隐藏)了实现细节的数据结构.    访问说明符(access specifier): 包括关键字 public 和 private.用于定义成员对类的用户可见还是只对类的友元和成员可见.在类中说明符可以i出现多次,每个说明符的有效范围从它自身开始,到下一个说明符为止.    聚合类(aggregate class): 只含有公有成员的类,并且没有类内初始值或者构造函数.聚合类的成员可以用花括号括起来的初始值列表…
定义抽象数据类型 定义在类内部的函数是隐式的inline函数. const成员函数 又叫做常量成员函数, 成员函数参数列表之后紧跟const关键字, const修饰的是类this指针. 默认情况下this的类型是指向类类型非常量版本的常量指针. 假如有一个名为MyClass的类, 在该类的普通成员函数中, this类型为MyClass *const类型, 即this本身不可改变, 但是可以改变this所指对象的成员变量. 对于该类的const成员函数, this类型为const MyClass…
第13章 类继承 1. 如果购买厂商的C库,除非厂商提供库函数的源代码,否则您将无法根据自己的需求,对函数进行扩展或修改.但如果是类库,只要其提供了类方法的头文件和编译后的代码,仍可以使用库中的类派生出新的类.而且可以在不公开实现的情况下将自己的类分发给其他人,同时允许他们在类中添加新特性. 2. 派生类构造函数首先创建基类对象,如果不调用基类构造函数,程序将使用默认的基类构造函数. 3. 创建派生类对象时,程序首先调用基类构造函数,然后再调用派生类构造函数.派生类对象过期时,程序将首先调用派生…
第12章 类和动态内存分配 1. 静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域运算符来指出静态成员所属的类.但如果静态成员是整形或枚举型const,则可以在类声明中初始化. P426-P427类静态成员的声明和初始化 //strnbad.h class StringBad { private: static int num_strings; - }; //strnbad.cpp int StringBad::num_strings = 0; 不能在类声明中初始化静态…
C++ Primer 第2章 变量和基本类型 C Primer 第2章 变量和基本类型 1 基本内置类型 算数类型 类型转换 字面值常量 2 变量 变量定义 3 复合类型 引用d左引用 指针d 4 const限定符 指针和const constexpr和常量表达式 5 处理类型 类型别名 auto类型说明符 decltype类型指示符 6 自定义数据结构 2.1 基本内置类型 算数类型 bool的最小尺寸未定义 char16_t和char32_t的最小 尺寸分别为16位和32位,含义是Unico…
C++ Primer Plus 第二章 开始学习C++ 知识点梳理 本章从一个简单的C++例子出发,主要介绍了创建C++程序的步骤,以及其所包含的预处理器编译指令.函数头.编译指令.函数体.注释等组成部分,说明了C++的基本代码风格及书写规则,对变量.函数.类的声明以及使用进行了阐述. 重点知识回顾 C++程序从main()函数开始,其中函数由函数头和函数体组成,函数头中包含函数所需的参数类型和函数的返回值类型,函数体是位于花括号中的C++语句.如下main()与普通函数没有区别,只不过其是由启…
C++ Primer Plus 第一章 预备知识 知识点梳理 本章主要讲述了C++的由来,讨论了面向过程语言与面向对象语言的区别,介绍了ANSI/ISO制定的C++标准,阐述了在Windows.Mac.Linux以及Unix上创建.编译C++程序的技巧和方法. 重点知识回顾 C++是为了解决编写大型程序时类似C语言结构化编程的理念无法更好的应对挑战的问题,其引入了面向对象(OOP)的新方法,与C语言强调算法的过程性编程不同,面向对象强调的是数据,其理念是设计与问题的本质特性相对应的数据格式. C…
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4255624.html 第四章      类和接口 13.      使类和成员的可访问性最小化 要区别设计良好的模块与设计不好的模块,最后重要的因素在于,这个模块对于外部的其他模块而言,是否隐藏…
第六章 类文件结构   6.2 无关性的基石 各种不同平台的虚拟机与所有的平台都统一使用的程序存储格式--字节码(ByteCode)是构成平台无关性的基石.java虚拟机不和包括java在内的任何语言绑定,它只与“Class”文件这种特定的二进制文件格式所关联,Class文件包含了java虚拟机指令集和符号表以及若干其他辅助信息.虚拟机并不关心Class的来源是何种语言.   6.3 Class类文件的结构 Class文件是一组以8字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在C…
目录 第13条: 使类和成员的可访问性最小化 第14条:在公有类中使用访问方法而非公有域 第15条:使可变性最小化 第16条:复合优先于继承 第17条:要么为继承而设计,并提供文档说明,要么就禁止继承 第18条:接口优先于抽象类 第19条:接口只用于定义类型 第20条:类层次优于标签类 第21条:用函数对象表示策略 第22条:优先考虑静态成员类   第4章 类和接口 第13条: 使类和成员的可访问性最小化 尽可能使每个类或者成员不被外界访问.提供尽可能小的访问级别. final维持字段不可变性,…