
C++ Primer
文章平均质量分 89
G0rgeoustray
Done is better than perfect.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ Primer 中文第 5 版练习答案 第 15 章 面向对象程序设计(1~27)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1对于某些成员,基类希望它的派生类各自定义适合自身的版本(而不是不作改变直接继承),此时基类就将这些成员定义成虚成员。2对于 protected,派生类有权访问,但是其他用户无法访问对于 private,派生类和其他用户都无法访问3#pragma once#include <iostream>using std::ostream;using std::endl;#incl原创 2021-10-13 21:57:59 · 405 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 14 章 操作重载与类型转换(1~53)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1相同点:参数数量和内置运算符相同优先级、结合性和内置运算符相同不同点:重载的运算符要么是类的成员,要么至少含有一个类类型的参数重载的 &&、|| 不保证短路求值2#pragma once#include <iostream>using std::istream;using std::ostream;using std::endl;#in原创 2021-09-23 22:47:09 · 321 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 13 章 拷贝控制(33~58)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!33如果不使用引用类型的话,Folder 类的对象可能很大,实参到形参的拷贝会影响性能。不用 const 是因为在函数内部需要对 Folder 对象进行修改34#include <iostream>using std::cout;using std::endl;#include <string>using std::string;#include <set&原创 2021-09-20 23:33:25 · 393 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 13 章 拷贝控制(1~32)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1如果构造函数的第一个参数是自身类类型的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数。以下情况会用到拷贝构造函数:拷贝初始化(用 = 初始化变量)将对象作为实参传递给一个非引用类型的形参从一个返回类型为非引用类型的函数返回一个对象用花括号列表初始化一个数组中的元素或一个聚合类中的成员初始化标准库容器或者调用其 push / insert 等操作时(empl原创 2021-09-15 17:22:16 · 349 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 12 章 动态内存
1都包含 4 个元素。实际上 b1 和 b2 的智能指针成员指向的是同一个 vector2// StrBlob.h#ifndef STRBLOB#define STRBLOB#include <stdexcept>#include <memory>#include <string> #include <vector>using std::vector;using std::string;using std::initializer_原创 2021-09-14 16:26:48 · 431 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 11 章 关联容器
1map 是关联型容器,vector 是顺序性容器。map 中的元素是键值对,并且自动按照键排序2list:不确定数据量大小,需要频繁插入删除,很少查找vector:不需要频繁在中间插入删除,需要频繁随机访问deque:只在头尾插入删除,需要频繁随机访问map:需要存放两个集合之间的映射关系set:需要存放不重复的元素,且要能快速查找是否已存在3#include <iostream>#include <string>#include <unordered原创 2021-06-08 15:05:57 · 235 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 10 章 泛型算法
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1 & 2#include <iostream>#include <algorithm>#include <string>#include <vector>#include <list>using namespace std;int main() { vector<int> vec{1, 2, 3, 2,原创 2021-06-07 19:32:38 · 239 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 9 章 顺序容器
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1(a)如果插入过程不重要:先用 vector 接收所有数据,然后用 sort 排序。如果插入过程重要:用 list,在中间插入的时间复杂度是 O(1)(b)deque,在两端插入、删除都是 O(1)(c)先用 vector 接收所有数据,然后用 sort 排序2list<deque<int>> testList;3它们指向同一个容器中的元素,或者是容器最后一个原创 2021-06-05 22:50:03 · 275 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 8 章 IO库
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1#include <iostream>#include <string>using namespace std;struct Sales_data { string bookNo; unsigned units_sold = 0; double revenue = 0.0;};int main() { Sales_data total; if (cin原创 2021-06-03 14:14:02 · 181 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 7 章 类
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!1#include <iostream>#include <string>using namespace std;struct Sales_data { string bookNo; unsigned units_sold = 0; double revenue = 0.0;};int main() { Sales_data total; if (cin原创 2021-06-02 16:58:49 · 271 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 6 章 函数(27~56)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!#include <iostream>#include <initializer_list>using namespace std;int sum(initializer_list<int> list) { int sum = 0; for ...原创 2020-04-16 17:31:59 · 253 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 6 章 函数(1~26)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!实参是值,是一个主调函数传递给被调函数的值,并且是形参的初始值。a. 函数返回类型应该改成stringb. 没有写返回类型,如果没有返回类型应该写voidc. 两个形参的名字不能相同d. 函数体没有花括号。#include <iostream>using name...原创 2020-04-15 16:16:22 · 213 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 5 章 语句(14~25)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!#include <iostream>using namespace std;int main() { unsigned int maxCnt = 0, cnt = 0; string now, last, maxString; while (cin >>...原创 2020-04-15 14:20:10 · 181 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 5 章 语句(1~13)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!空语句是只含有一个;的语句。用于语法上需要但是逻辑上不需要一条语句的地方。块,即复合语句,是指用花括号括起来的(可能为空的)语句和声明的序列。用于语法上需要一条语句但是逻辑上需要多条语句的地方。可读性降低。#include <iostream>using namespa...原创 2020-04-14 21:55:53 · 151 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 4 章 表达式(1~38)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!105a. *(vec.begin())b. (*(vec.begin())) + 1可以接受,就个人习惯而言,大多数情况下,“改变对象的值”和“让对象参与运算”这两件事情是不发生在同一个语句的,除了一些常见的安全做法,例如a[cnt++] = val;或者*p++ = *q++;等等...原创 2020-04-14 16:12:42 · 180 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 3 章 字符串、向量和数组(27~45)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!a. 非法,buf_size不是常量表达式;b. 合法;c. 非法,txt_size()的返回值不是constexpr;d. 非法,没有空间存放字符串尾的\0。sa:10 个空字符串;ia:10 个 0;sa2和ia2中元素的值未定义。插入、删除元素繁琐,初始化时必须规定长度,...原创 2020-04-13 20:34:40 · 195 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 3 章 字符串、向量和数组(21~26)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!#include <iostream>#include <vector> #include <string>using namespace std;int main() { vector<int> v1, v2(10), v3(1...原创 2020-04-13 18:55:02 · 148 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 3 章 字符串、向量和数组(12~20)
a. 正确。该向量元素是vector<int>,被默认初始化为空的vector;b. 错误。类型不匹配;c. 正确。该向量由 10 个string组成,每个string都被初始化成"null"a. 0 个元素;b. 10 个元素,都被默认初始化;c. 10 个元素,都是 42;d. 1 个元素,值是 10;e. 2 个元素,分别是 10,42;f. 19 个元素,都被...原创 2020-04-13 17:19:18 · 216 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 3 章 字符串、向量和数组(1~11)
C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!using std::cin;using std::cout;using std::endl; // 一次读一行#include <iostream>#include <string>using namespace std;int main(...原创 2020-04-12 22:17:35 · 211 阅读 · 0 评论 -
C++ Primer 中文版(第 5 版)练习解答合集
章节解答链接第 1 章 开始1~25第 2 章 变量和基本类型1~26,27~42原创 2020-04-12 19:56:55 · 542 阅读 · 1 评论 -
C++ Primer 中文第 5 版练习答案 第 2 章 变量和基本类型(27~42)
a.变量类型值ipint*nullptriint0rint&0b.变量类型值iint0ipint*nullptrc.变量类型值ipint*nullptrip2int0a. 不合法,const对象必须初始化;b. 合法c. 合法,用于初始...原创 2020-04-12 19:48:26 · 409 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 2 章 变量和基本类型(1~26)
书是中文版第 5 版。自己写的解答,如有错误之处,烦请在评论区指正!不同类型数据所占的比特数不同,所能表示的数据范围也不同;无符号类型只能表示大于等于零的数,带符号类型可以表示正数、零和负数;float的精度不如double。全部用double,因为全部涉及浮点数,但是贷款业务并不需要long double的精度,不选float的原因参考书 P32 建议:如何选择类型的最后一条。...原创 2020-04-06 22:24:45 · 254 阅读 · 0 评论 -
C++ Primer 中文第 5 版练习答案 第 1 章 开始
略略#include <iostream>int main() { std::cout << "Hello, World" << std::endl; return 0;}#include <iostream>int main() { int v1, v2; std::cin >> v1 >>...原创 2020-04-06 15:36:17 · 247 阅读 · 0 评论