- 博客(14)
- 收藏
- 关注
原创 C++Primer 学习笔记 第十二章 动态内存
//12.1 动态内存与智能指针//在C++中,动态内存的管理是通过一对运算符来完成的:new,在动态内存中为对象分配空间并返回一个只想该对象的指针,我们可以选择对对象进行//初始化;delete,接受一个动态对象的指针,销毁该对象,并释放与之关联的内存。//动态内存的使用很容易出现问题,因为确保在正确的时间释放内存是极其困难的。有时我们会忘记释放内存,在这种情况下就会产生内存泄露;//有时在尚有指针引用内存的情况下我们就释放了它,在这种情况下就会产生引用非法内存的指针。//为了更容易地使用动
2021-04-09 12:39:11
192
原创 C++Primer 学习笔记 第十一章 关联容器
//关联容器支持搞笑的关键字查找和访问。两个主要的关联容器,类型是map和set。map中的元素是一些关键字-值对://关键字起到索引的作用,值则表示与索引相关联的数据。set中每个元素只包含一个关键字;//set支持高效的关键字查询操作——检查一个给定关键字是否在set中。例如,在某些文本处理过程中,可以用一个set来保存想要忽略的单词。//字典则是一个很好的使用map的例子:可以将单词作为关键字,将单词释义作为值//标准库提供了8个关联容器//按关键字有序保存元素//map 关联数组;
2021-03-18 13:04:41
167
原创 C++Primer 学习笔记 第十章 泛型算法
//顺序容器只定义了很少的操作:在多数情况下,我们可以添加和删除元素、访问首尾元素、确定容器是否为空、//以及获得指向容器首元素或尾元素之后位置的迭代器。//我们可以想象用户还希望做其他很多有用的操作:查找特定元素、替换或删除一个特定值、重排元素顺序等。//标准库并未给每个容器都定义成员函数来实现这些操作,而是定义了一组泛型算法:称他们为“算法”,是因为他们实现了一些经典算法的公共接口//如排序和搜索;称它们是泛型的,是因为他们可以用于不同类型的元素和多种容器类型,以及我们将看到的,还能用于其他
2021-03-13 15:37:27
177
原创 C++Primer 学习笔记 第九章 顺序容器
//一个容器就是一些特定类型对象的集合。//顺序容器,为程序员提供了控制元素存储和访问顺序的能力。这种顺序不依赖于元素的值//而是与元素加入容器时的位置相对应。//9.1顺序容器概述//标准库中的顺序容器如下://vector 可变大小数组。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢。//deque 双端队列。支持快速随机访问。在头尾位置插入/删除速度很快。//list 双向链表。只支持双向顺序访问。在list中任何位置进行插入/删除操作速度都很快。//forward
2021-03-11 13:30:35
175
原创 C++Primer 学习笔记 第八章 IO库
//8.1 IO类//到目前为止,我们已经使用过的IO类型和对象都是操纵char数据的。默认情况下,这些对象都是关联用户的控制台窗口的。//当然,我们不能限制实际应用程序仅从控制台窗口进行IO操作,应用程序常常需要读写命名文件。而且,使用IO操作处理string//中的字符会很方便。此外,应用程序还可能读写需要宽字符支持的语言。//8.1.1 IO对象无拷贝或赋值//8.1.2条件状态//查询流的状态//管理条件状态//8.1.3管理输出缓冲//每个输出流都管理一个缓冲区,用来保
2021-03-11 09:07:14
109
原创 C++Primer 学习笔记 第七章 类
//7.1定义数据类型//7.1.1设计Sales_data类//7.1.2定义改进的sales_data类#include "iostream"#include "string"using namespace std;struct Sales_data{ std::string isbn()const { return bookNo; } Sales_data& combine(const Sales_data&); double avg_price() const
2021-03-06 15:14:32
96
原创 C++Primer 学习笔记 第六章 函数
//6.1函数基础//一个典型的函数定义包括一下几个部分:返回类型、函数名字、形参列表、函数体//6.1.1局部对象//在C++语言中,名字有作用域,对象有生命周期//1.名字的作用域是程序文本的一部分,名字在其中可见。//2.对象的生命周期是程序执行过程中该对象存在的一段时间。//自动对象//当函数的控制路径经过变量定义语句时创建该对象,当到达定义所在的块末尾时销毁它。我们把只存在于//块执行期间的对象称为自动对象。当块的执行结束后,块中创建的自动对象的值就变成未定义的了。//形参
2021-03-06 15:13:33
88
原创 C++Primer 学习笔记 第五章 语句
//5.1简单语句//5.2语句作用域//5.3条件语句//5.3.1if语句//5.3.2switch语句//5.4迭代语句//5.5跳转语句//5.5.1break语句//contiune语句//goto语句//5.6try语句块和异常处理//异常是指存在于运行时的反常行为,这些行为超出了函数正常功能的范围。典型的异常包括拾取数据库连接以及遇到意外的输入等。//处理反常行为可能是设计所有系统最难的一部分。//当程序的某部分检测到一个它无法处理的问题时,需要用到异常处理。
2021-03-06 15:12:45
102
原创 C++Primer 学习笔记 第四章 表达式
//4.1基础//有几个基础概念对表达式的求值过程由影响,他们涉及大多数(甚至全部)表达式//4.1.1基本概念//一元运算符和二元运算符//组合运算符和运算对象//运算对象转换//左值和右值//当一个对象被用作右值的时候,用的是对象的值,当对象被用作左值的时候,用的是对象的身份//4.1.2优先级与结合律//复合表达式//括号无视优先级与结合律//优先级与结合律有何影响//4.2算术运算符//4.3逻辑和关系运算符//逻辑与和逻辑或运算符//逻辑非运算符//关
2021-03-06 15:11:27
98
原创 C++ Primer 学习笔记 第三章 字符串、向量和数组
//3.1命名空间的using声明//每个名字都需要独立的using声明//头文件不应包含using声明//3.2标准库类型string//标准库了卫星string表示可变长的字符序列,使用string类型必须首先包含string头文件//3.2.1定义和初始化string对象#include "iostream"#include "string"using namespace std;string s1;string s2 = s1;string s3 = "hiya";s
2021-03-06 15:09:52
190
原创 C++中的指针概念梳理
在C++中指针通常难以理解,即使是有经验的程序员也常常因为调试指针引发的错误而备受折磨。笔者在学习C++时常常被指针弄得晕头转向,于是决定对指针的概念做一次梳理,希望本文能够对C++入门者有些许作用。1.指针的概念指针(pointer)是“指向(point to)”;另外一种数据类型的复合类型。与引用类似,指针也实现了对其他对象的间接访问。然而指针与引用又有区别。首先,指针本身是一个对象,即我们可以对指针进行赋值和拷贝,并且在指针的生命周期中可以先后指向几个不同的对象。其次,指针定义时不必赋值,此时指针
2021-03-06 10:23:28
2102
原创 C++Primer学习笔记 第二章 变量和基本类型
//数据类型决定了程序中数据和操作的意义。//2.1基本内置类型//2.1.1算术类型/*算术类型分为两类:整型(包括字符和布尔类型在内)和浮点型。一个字节=8个比特一个字=4或8个字节(不同的机器)*///2.1.2类型转换//2.1.3 字面值常量//一个形如42的值被称作字面值常量,这样的值一望而知。每个字面值常量对应一种数据类型,字面值常量的形式和值决定了它的数据类型//2.1.4 字符和字符串字面值// 'a' 字符字面值//"hello" 字符串字面值
2021-03-06 10:03:46
140
2
原创 C++Primer 学习笔记 第一章 开始
//本章我们将编写一个程序来解决简单的书店问题。//我们的书店保存所有销售记录的档案,每条记录保存了某本书的一次销售的信息(一册或多册)。//每条记录包含三个数据项://0-201-70353-x 4 24.99//第一项是书的ISBN号,第二项是售出的册数,最后一项是书的单价。有时书店老板需要查询此档案,计算每本书的销售量,销售额,及均价。//定义变量//进行输入和输出//使用数据结构保存数据//检测两条记录是否有相同的ISBN//包含一个循环来处理档案中的每条记录。//1.
2021-03-05 15:01:27
252
5
原创 C++中的STL经典案例实现
STL经典案例实现1)某市举行一场演讲比赛,共有24个人参加,按参加顺序设置参赛号。比赛共三轮,前两轮为淘汰赛,第三轮为决赛。2)比赛方式:分组比赛第一轮分为4个小组,根据参赛号顺序依次划分,比如100-105为一组,106-111为第二组,依次类推,每组6个人,每人分别按参赛号顺序演讲。当小组演讲完后,淘汰组内排名最后的三个选手,然后继续下一个小组的比赛。第二轮分为2个小组,每组6人,每个人分别按参赛号顺序演讲。当小组完后,淘汰组内排名最后的三个选手,然后继续下一个小组的比赛。第三轮只剩下6个人
2020-08-16 15:31:35
506
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人