《C++ Primer》 chapter 15 TextQuery】的更多相关文章

<C++ Primer>中第15章为了讲解面向对象编程,举了一个例子:设计一个小程序,能够处理查询给定word在文件中所在行的任务,并且能够处理“非”查询,“或”查询,“与”查询.例如执行查询 one & of |the ,表示对单词one和of的查询结果取交集,然后对单词the的查询结果取并集. 书中查询的底层操作实际定义在类TextQuery中,我们在TextQuery的基础上,进一步封装并实现如下图所示的类结构,能够达到上述功能需求.类之间的结构如下图所示: 程序扼要设计如下表所…
序 算法导论一书的第四部分-高级设计和分析技术从本章开始讨论,主要分析高效算法的三种重要技术:动态规划.贪心算法以及平摊分析三种. 首先,本章讨论动态规划,它是通过组合子问题的解而解决整个问题的,通常应用于最优化问题. 动态规划算法的设计可以分为如下4个步骤: 描述最优解的结构 递归定义最优解的值 按照自底向上的方式计算最优解的值 由计算出的结果构造一个最优解 15.1 装配线调度 问题描述 第一个动态规划的例子是求解一个制造问题,Colonel汽车公司在有两条装配线的工厂生产汽车,具体如下图所…
前言 在C++中,我们使用类定义自己得数据类型/通过定义新的类型来反应待解决的题的各种概念,是我们更容易编写.调试和修改程序. 我们需要主要关注数据抽象的重要性.数据抽象能帮助我们将对象的具体实现与对象能执行的操作分离开来 类的基本思想是数据抽象和封装. 数据抽象是依赖接口和实现分离的编程&&设计技术:封装实现了类的接口和实现的分离. 笔记 因为老师最近讲的课其实在我看来跨度特别大,每个知识点都只是涉及,好像只挑重点讲,我看这章的时候还有很多不懂得地方需要去翻前面的(直接跳过了前面的章节,…
书店程序是<c++ primer>中重要的实例,涉及大部分重要知识点,但代码分散阅读不便,下面按照章节顺序总结 Sales_item.h #ifndef SALESITEM_H // we're here only if SALESITEM_H has not yet been defined #define SALESITEM_H //#include "Version_test.h" // Definition of Sales_item class and relat…
6.25~ 6.27,用了3天翻了一遍<C++ Primer>. ▶书的 固有坏处 一句话: 代码比 文字描述 好看多了.————> 直接看习题部分/ 看demo就行了 看文字在描述这个情景,还要自己脑子里想象出来这段话在说什么.经常不知道其中哪句话是个啥意思.而且看着看着就走神了.——> 除非是对存疑的代码进行解说,否则用文字来导入场景,书看起来真的很没意思. ▇▇ <cpp Primer>这个文字描述 看着让人犯困! 还是找找啥一章总结/读书笔记 性质的先来看看吧!…
<C++Primer>第五版习题答案--第五章[学习笔记] ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/15 第五章:语句 练习5.3: 代码可读性降低了. while(val<=10) sum+=val,++val; 练习5.4: iter未初始化. if语句中的status超过作用范围,且status在while中进行了判断. 练习5.5: #include<iostream> #include<ve…
<C++Primer>第五版习题答案--第六章[学习笔记] ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/16 第六章:函数 练习6.2: 返回类型错误 无返回类型 形参名字应该不同 函数体需要用花括号包含起来 练习6.4: 实现:编写函数,使得用户输入一个整数,main函数调用函数得到阶乘. #include<iostream> using namespace std; int fact(int n) { int r…
刚上大学那时,几个室友一块买了本<C++ Primer>第4版,看了一遍后就没怎么碰了,偶尔拿出来翻翻,当作工具书使用.后来知道有第5版了,一直觉得内容差不多吧.直到最近,再读其中的一些内容,结合自己曾经所学所用,很多地方都想得更深了.结合C++11,也有很多新的发现.人就是在不断否定过去的自己中成熟的. 以下是书的第2章,变量和基本类型,的一些笔记. 一.基本内置类型 基本数据类型包括算数类型(arithmetic type)和空类型(void). 书中列出了每种类型的最小存储空间,在不同机…
最近在学C++,在<C++ Primer>第五版的3.1节中说到使用using声明来使用命名空间中的成员,<C++ Primer>中这样写道: 有了using声明就无须专门的前缀(形如命名空间::)也能使用所需的名字了.using声明具有如下的形式: using namespace::name; 一旦声明了上述语句,就可以直接访问命名空间中的名字. 这样,形如书中所说 #include <iostream> using std::cin; using std::cout…
<C++Primer>(第五版)中,3.4.1的例题中使用一个名为text的字符串向量存放文本文件中的数据,输出text中的内容,刚开始我这样写: #include <iostream> #include <string> #include <vector> #include <iterator> using namespace std; int main(){ string text("name"); for (auto i…