Primer C++ 第五版阅读笔记
文章平均质量分 78
tanfuz
这个作者很懒,什么都没留下…
展开
-
第11章:关联容器
11.1 使用关联容器使用map一个经典的使用关联数组的单词计数程序:使用set11.2 关联容器概述关联容器不支持顺序容器的位置相关的操作,例如push_front或push_back,原因是关联容器中的元素是根据关键字存储的。11.2.1 定义关联容器定义一个map时,必须既指明关键字类型又指明值类型;而定义一个set时,只需要指明关键字类型,因为set中没有值。初始化multimap或multiset一个map或set中的关键字必须是唯一的,即,对于一个给定的关键字,智能有一个原创 2021-03-11 23:06:40 · 98 阅读 · 0 评论 -
第10章:泛型算法
顺序容器只定义了很少的操作,在多数情况下,我们可以添加和删除元素,访问首尾元素,确定容器是否为空以及获得只想首元素或尾元素之后位置的迭代器。如果用户还希望做其他更多有用的操作呢:比如查找特定元素,替换或删除一个特定值,重排元素顺序等。标注好难看并未给每个容器都定义成员函数来实现这些操作,而是定义了一组泛型算法,称它们为算法是因为他们实现了一些经典算法的公共接口,如排序和搜索,称它们是泛型的,是因为它们可以用于不同类型的元素和多种容器类型,不仅包括标准库类型,如vector或list,还包括内置数组类型。原创 2021-03-09 23:44:34 · 1027 阅读 · 0 评论 -
第9章:顺序容器
9.1 顺序容器概述原创 2021-03-07 16:15:38 · 209 阅读 · 0 评论 -
第8章:IO库
8.1 IO类IO类型间的关系继承的关系8.1.1 IO对象无拷贝或赋值进行IO操作的函数通常以引用方式传递和返回流。8.1.2 条件状态IO 可能出现错误,IO类定义了一些函数和标志帮助我们访问和操纵流的条件状态。查询流的状态IO库定义了一个与机器无关的iostate类型用于流的状态查询,可通过标准库函数进行查询管理条件状态rdstate成员返回iostate,对应流的当前状态,setstate成员将给定条件置位,表示发生对应错误。clear用于清除标志位。8.1.3 管原创 2021-03-01 00:10:28 · 53 阅读 · 0 评论 -
第7章:类
类的基本思想是数据抽象和封装。数据抽象是一种依赖于接口和实现分离的编程技术。类的接口包括用户所能执行的操作,类的实现则包括类的数据成员,负责接口实现的函数体以及定义类所需的各种私有函数。封装实现了类的接口和实现的分离,封装后的类隐藏了它的实现细节,也即是说类的用户只能通过接口而无法访问实现部分。类想要实现数据抽象和封装,需要首先定义一个抽象数据类型,在抽象数据类型中,由类的设计者负责考虑类的实现过程;使用该类的程序员则只需要抽象地思考类型做了什么,而无需了解类型的工作细节。7.1 定义抽象数据类型原创 2021-02-28 21:34:22 · 169 阅读 · 0 评论 -
第6章:函数
6.1 函数基础6.1.1 局部对象6.1.2 函数声明6.1.3 分离式编译编译和链接多个源文件6.2 参数传递6.2.1 传值参数指针形参6.2.2 传引用参数使用引用避免拷贝拷贝效率低或者有的类类型不支持拷贝使用引用形参返回额外信息一个函数只能返回一个值,引用形参可以返回多个结果6.2.3 const形参和实参当形参又顶层const时,传给他const或者非const都是可以的指针或引用形参与const尽量使用常量引用把函数不会改变的形参定原创 2021-02-27 23:57:03 · 65 阅读 · 0 评论 -
第5章:语句
5.1 简单语句空语句别漏写分号,也别多写分号复合语句(块)花括号括起来的部分5.2 语句作用域5.3 条件语句5.3.1 if语句5.3.2 switch语句5.4 迭代语句5.4.1 while语句5.4.2 传统的for语句5.4.3 范围for语句5.4.4 do while语句5.5 跳转语句5.5.1 break语句5.5.2 continue语句5…3 goto语句5.6 try语句块和异常处理5.6.1 throw表达式5.6原创 2021-02-25 23:37:53 · 58 阅读 · 0 评论 -
第四章:表达式
4.1 基础4.1.1 基本概念一元运算符和二元运算符组合运算符和运算对象优先级,结合律,求值顺序运算对象转换类型转换重载运算符C++定义了运算符作用于内置类型和复合类型的运算对象时所执行的操作。当运算符作用于类类型的运算对象时,用户可以自行定义其含义,称之为这个过程为重载运算符左值和右值表达式要不然要不是右值,要不是左值,左值可位于赋值语句左侧,右值不能。当一个对象被用作右值的时候,用的是对象的值(内容),当对象被用作左值的时候,用的是对象的身份(在内存中的位置)4.1.2 优先原创 2021-02-25 23:12:03 · 167 阅读 · 0 评论 -
第三章:字符串,向量和数组
3.1 命名空间using声明每个名字都需要独立的using声明头文件不应该包含using声明3.2 标准库string3.2.1 定义和初始化string对象直接初始化和拷贝初始化3.2.2 string对象上的操作读写sring对象读取位置数量多string对象使用getline读取一整行有时希望在最终的到达字符串中保留输入时的空白符,这是用getline函数代替原来的>>运算符string的empty和size操作string::size_typ原创 2021-02-25 20:49:02 · 92 阅读 · 0 评论 -
第二章:变量和基本类型
2.1 基本内置类型包含算术类型和空类型(void)2.1.1 算术类型带符号类型和无符号类型除布尔型和字符型外,其他整形可划分为带符号和无符号两种字符被划分为char、signed char 和unsigned char2.1.2 类型转换含有无符号类型的表达式2.1.3 字面值常量形如42的值被称作字面值常量,每个字面值常量对应一种数据类型,字面值常量的形式和值决定了它的数据类型整形和浮点型字面值整形字面值具体的数据类型由它的值和符号决定,默认十进制字面值是带符号数,类型是i原创 2021-02-25 11:05:27 · 230 阅读 · 1 评论 -
第一章:开始
1.1 编写一个简单的C++程序int main(){ return 0;}1.1.1 编译、运行程序如何编译取决于使用的操作系统和编译器,如果将编译器和其他程序创建分析工具包装在一起则成为集成开发环境(IDE)通过命令行界面学习C++可以将精力集中于C++语言本身,而不是一些开发工具如IDE程序源文件命名约定不同的编译器产生的文件有不同的后缀名,常见的包括:.cc、.cxx、.cpp、.cp及.c从命令行运行编译器通过控制台窗口,编译后生成可执行文件,如果是window系统,生成.原创 2021-02-24 17:01:59 · 59 阅读 · 0 评论