随笔分类 -  C++

1
摘要:某些程序对内存分配有特殊要求,不能直接使用标准内存管理机制 重载new和delete算符可控制内存分配的过程 19.1.1 重载new和delete 说法“重载new和delete”,但重载new和delete与重载其他算符的过程非常不同 使用new/new []表达式的过程: 调用名为operat 阅读全文
posted @ 2021-04-22 17:08 砥才人 阅读(363) 评论(0) 推荐(1)
摘要:大规模应用程序的特殊要求包括: 在独立开发的子系统之间协同处理错误:异常处理 使用各种库(可能包含独立开发的库)进行协同开发:命名空间 对比较复杂的应用概念建模:多重继承 18.1 异常处理 异常处理机制允许程序在运行时对出现的问题进行通信并处理 异常使得可将问题的检测和解决分离,一部分用于检测问题 阅读全文
posted @ 2021-04-22 17:06 砥才人 阅读(417) 评论(0) 推荐(0)
摘要:17.1 tuple类型 tuple是类似pair的模板: pair和tuple的成员类型都可以不相同 pair恰好有两个成员,tuple可有任意数量的成员 按照不同参数数量和类型实例化出的tuple是不同类型 tuple类型及其伴随类型和函数都在头文件tuple中 17.1.1 定义和初始化tup 阅读全文
posted @ 2021-04-22 17:02 砥才人 阅读(264) 评论(0) 推荐(0)
摘要:面向对象编程(OOP)和泛型编程(GP)都能处理在编写程序时类型未知的情况 OOP能处理运行时获取类型的情况 GP能处理编译期可获取类型的情况 标准库的容器、迭代器、算法都是泛型编程 编写泛型程序时独立于任何类型,使用泛型程序时提供类型,程序实例在该类型上运行 模板是泛型编程的基础。一个模板是一个创 阅读全文
posted @ 2021-04-22 16:48 砥才人 阅读(480) 评论(0) 推荐(0)
摘要:15.1 OOP:概述 **面向对象程序设计(object-oriented programming)**的核心思想是:数据抽象、继承、动态绑定 使用数据抽象,可将类的接口与实现分离 使用继承,可定义相似的类型并对其相似关系建模 使用动态绑定,可在一定程度上忽略相似类型的区别,以统一的方式使用它们的 阅读全文
posted @ 2021-04-22 16:47 砥才人 阅读(396) 评论(0) 推荐(0)
摘要:14.1 基本概念 重载的运算符是特殊的函数:名字由关键字operator后接要定义的算符共同组成,也有返回类型、参数列表、函数体。 重载运算符函数的参数量与该算符作用的运算对象数量一样多 除重载调用运算符operator()外,其他重载运算符不能有默认实参 若一个重载运算符是成员函数,则其第一个运 阅读全文
posted @ 2021-04-22 16:38 砥才人 阅读(333) 评论(0) 推荐(0)
摘要:定义一个类时,可显式或隐式的指定在此类型对象上拷贝、移动、赋值、销毁时做什么。通过5种成员函数实现拷贝控制操作: 拷贝构造函数:用同类型的另一个对象初始化本对象时做什么(拷贝初始化) 拷贝赋值算符:将同类型的另一个对象赋值给本对象时做什么(拷贝赋值) 移动构造函数:用同类型的另一个对象初始化本对象时 阅读全文
posted @ 2021-04-22 16:36 砥才人 阅读(282) 评论(0) 推荐(0)
摘要:对象的生存期: 全局对象:程序启动时创建,程序结束时销毁 局部static对象:第一次使用前创建,程序结束时销毁 局部自动对象:定义时创建,离开定义所在程序块时销毁 动态对象:生存期由程序控制,在显式创建时创建,显式销毁时销毁 动态对象的正确释放极易出错。为安全使用动态对象,标准库定义了智能指针来管 阅读全文
posted @ 2021-04-22 16:34 砥才人 阅读(312) 评论(0) 推荐(0)
摘要:关联容器的元素按照关键字来保存和访问,而顺序容器的元素是按照在容器中的位置来保存和访问 关联容器支持高效的关键字查找和访问 2种关联容器: map中的元素是关键字-值对(key-value对),关键字作为索引,值表示与索引相关的数据 set中的元素只包含关键字 8个关联容器: map 关联数组,保存 阅读全文
posted @ 2021-04-22 16:31 砥才人 阅读(210) 评论(0) 推荐(0)
摘要:标准库未给容器添加大量功能,而是提供一组独立于容器的泛型算法 算法:它们实现了一些经典算法的公共接口 泛型:它们可用于不同类型的容器和不同类型的元素 利用这些算法可实现容器基本操作很难做到的事,例如查找/替换/删除特定值、重排顺序等 10.1 概述 大多数算法定义在algorithm头文件中,另外一 阅读全文
posted @ 2021-04-22 16:25 砥才人 阅读(264) 评论(0) 推荐(0)
摘要:一个容器是特定类型对象的集合 顺序容器中元素的顺序与其加入容器的位置对应 关联容器中元素的顺序由其关联的关键字决定,关联容器分为有序关联容器和无序关联容器 所有容器类共享公有接口,不同容器按不同方式扩展。 标准库还提供了3种容器适配器,为容器操作定义了不同的接口 9.1 顺序容器概述 所有容器都可快 阅读全文
posted @ 2021-04-22 16:21 砥才人 阅读(372) 评论(0) 推荐(1)
摘要:C++语言不直接处理输入输出,而是通过标准库中的一组类来处理IO 1.2节介绍的IO库: istream(输入流)类型,提供输入 ostream(输出流)类型,提供输出 cin,是istream对象,从标准输入读取数据 cout,是ostream对象,向标准输出写数据 cerr,是ostream对象 阅读全文
posted @ 2021-04-22 16:13 砥才人 阅读(301) 评论(0) 推荐(0)
摘要:类的基本思想是数据抽象和封装 数据分离抽象是一种依赖于接口和实现分离的编程/设计技术。接口包括用户能执行的操作,实现包括类的数据成员、接口实现的函数体、定义类所需的各种私有函数 封装实现了类的接口和实现的分离,封装后的类隐藏了它的实现细节。用户只能使用接口而无法访问实现部分 类要实现数据抽象和封装, 阅读全文
posted @ 2021-04-22 16:10 砥才人 阅读(209) 评论(0) 推荐(0)
摘要:6.1 函数基础 函数定义包括:返回类型、函数名字、由0个或多个形参组成的列表以及函数体 通过调用运算符()来执行函数,它作用于一个表达式,该表达式是函数或函数指针。圆括号内是一个逗号隔开的实参列表,调用时用实参初始化形参。 调用函数完成两项工作: 隐式定义形参并用实参初始化函数对应的形参 将控制权 阅读全文
posted @ 2021-04-22 16:07 砥才人 阅读(315) 评论(0) 推荐(0)
摘要:C++提供了一组控制流语句,包括条件执行语句、循环语句、跳转语句。 5.1 简单语句 空语句 ; ,最简单的语句 别漏写分号,也别多写 while(cin>>s && s!=sought) ; //空语句,加上该注释代表有意为之 //语法上需要,但逻辑上不需要,可使用空语句 while(iter!= 阅读全文
posted @ 2021-04-22 16:02 砥才人 阅读(207) 评论(0) 推荐(0)
摘要:表达式由一个或多个运算对象组成,对表达式求值返回结果。 字面值和变量是最简单的表达式 把运算符和运算对象组合可得到复杂表达式。 4.1 基础 4.1.1 基本概念 一元运算符作用于一个对象,如取地址符&、解引用符* 二元运算符作用于两个对象,如==、* 三元运算符?:。 函数调用也是特殊的运算符,它 阅读全文
posted @ 2021-04-22 15:56 砥才人 阅读(214) 评论(0) 推荐(0)
摘要:string和vector是两类最重要的标准库类型 strng表示可变长的字符序列 vector存放某种给定类型对象的可变长序列。 3.1 命名空间的using声明 using namespace::name; //using声明 using std::cin; using std::cout;us 阅读全文
posted @ 2021-04-22 15:50 砥才人 阅读(411) 评论(0) 推荐(0)
摘要:2.1 基本内置类型 基本数据类型包含了算术类型(arithmetic type)和空类型(void) 算数类型,包含了字符、整型数、布尔值和浮点数 空类型,不对应具体的值 2.1.1 算术类型 算术类型分为两类:整型(integral type,包含字符和布尔)和浮点型 bool 取值true或f 阅读全文
posted @ 2021-04-22 15:40 砥才人 阅读(500) 评论(0) 推荐(0)
摘要:1.1 编写一个简单的程序 int main() { return 0; } 函数 包含4部分: 返回类型(return type) 函数名(function name) 形参列表(parameter list,允许为空) 函数体(function body) main 函数 C程序必有函数,操作系 阅读全文
posted @ 2021-04-22 15:25 砥才人 阅读(561) 评论(0) 推荐(0)
摘要:第1章 开始 第Ⅰ部分 C++基础 第2章 变量和基本类型 第3章 字符串、向量和数组 第4章 表达式 第5章 语句 第6章 函数 第7章 类 第 Ⅱ 部分 C++标准库 第8章 IO库 第9章 顺序容器 第10章 泛型算法 第11章 关联容器 第12章 动态内存 第 Ⅲ 部分 类设计者的工具 第1 阅读全文
posted @ 2021-04-22 15:17 砥才人 阅读(481) 评论(0) 推荐(0)

1