Skip to Content
C++程序设计:原理与实践(基础篇)(原书第2版)
book

C++程序设计:原理与实践(基础篇)(原书第2版)

by 本贾尼 斯特劳斯特鲁普
August 2021
Intermediate to advanced
450 pages
9h 36m
Chinese
Pearson
Content preview from C++程序设计:原理与实践(基础篇)(原书第2版)

习题

1.对9.1节中介绍的真实世界中的对象(如烤面包机)列出可能的操作。

2.设计并实现一个保存(名字,年龄)对的Name_pairs类,其中名字是一个string,年龄是一个double。将值对表示为一个名为name的vector<string>成员和一个名为age的vector<double>成员。提供一个输入操作read_name(),能读入一个名字列表。提供一个read_ages()操作,提示用户为每个名字输入一个年龄。提供一个print()操作,按name向量的顺序打印(name[i],age[i])对(每行一个值对)。提供一个sort()操作,将name向量按字典序排序,并重整age向量与name向量新顺序匹配。将所有“操作”实现为成员函数。测试这个类(当然,在设计过程中尽早测试并多测试)。

3.将Name_pairs::print()函数替换为(全局)运算符<<,并为Name_pairs定义==和!=运算符。

4.考察8.4节最后那个令人头痛的例子。给它加上适当的缩进和解释每个语法结构意义的注释。注意,这个例子并未做任何有意义的事情,它只是单纯为了说明令人困惑的代码风格。

5.此题和后面几题要求你设计并实现一个Book类,你可以设想这是图书馆软件系统的一部分。Book类应包含表示ISBN号、书名、作者和版权日期的成员,以及表示是否已经借出的成员。创建能返回这些成员的值的函数,以及借书和还书的函数。对于输入Book对象的数据进行简单的合法性检查,例如:只接受n-n-n-x形式的ISBN号,其中n是一个整数,x是一个数字或一个字母。将ISBN号存储为string。

6.为Book类添加运算符。添加==运算符,用于检查两本书的ISBN号是否相等。定义!=运算符,比较ISBN号是否不等。定义<<,分行输出书名、作者和ISBN号。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

C++语言导学(原书第2版)

C++语言导学(原书第2版)

本贾尼 斯特劳斯特鲁普
管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey
Go程序设计语言

Go程序设计语言

艾伦A. A.多诺万, 布莱恩W. 柯尼汉

Publisher Resources

ISBN: 9787111562252