Zhao Zhengyang

《C++程序设计原理与实践》笔记 第24章 数值计算

本章将介绍用于数值计算的一些基本语言特性和标准库功能。 24.1 引言 本章的目的是介绍一些用于处理简单数值计算(numerics)问题的语言技术细节: 与内置类型相关的问题,例如精度和溢出 内置多维数组和Matrix库 随机数 标准库数学函数 复数 24.2 大小、精度和溢出 当我们使用内置类型时,数字被存储在固定大小的内存中。也就是说,整数类型(int、lon...

《C++程序设计原理与实践》笔记 第23章 文本处理

本章将介绍如何从文本中提取信息。在本章中,我们首先回顾标准库中最常用的文本处理功能:string、iostream和map。然后,我们将介绍正则表达式(regex),用来表达文本中的模式。 23.1 文本 本质上,我们无时无刻不在处理文本。除了图像和声音等二进制格式数据外,几乎所有其他信息都适合程序进行文本分析和转换。 23.2 字符串 字符串(string)是一个字符序列,并提供了一些...

C++函数式编程

1.引言 函数式编程(functional programming)是一种编程范式,通过函数的求值和组合来构造程序。在函数式编程中,函数被视为一等公民,可以像其他数据类型一样作为参数传递和从函数中返回。接受函数作为参数、或者返回函数的函数叫做高阶函数(high-order function),是函数式编程的核心概念之一。函数式编程强调使用纯函数(pure function),即没有状态和副作...

《C++程序设计原理与实践》笔记 第20章 容器和迭代器

本章和下一章将介绍STL,即C++标准库的容器和算法部分。关键概念序列和迭代器用于将容器(数据)和算法(处理)联系在一起。 20.1 存储和处理数据 首先考虑一个简单的例子:Jack和Jill各自在测量车速,并记录为浮点值。Jack将测量值存储在数组中,而Jill存储在vector中。现在我们想在程序中使用他们的数据,应该怎么做? 我们可以让Jack和Jill的程序将结果写到文件中,然后...