- 博客(1442)
- 问答 (1)
- 收藏
- 关注
原创 C++ //练习 13.44 编写标准库string类的简化版本,命名为String。你的类应该至少有一个默认构造函数和一个接受C风格字符串指针参数的构造函数。使用allocator为你的String
【代码】C++ //练习 13.44 编写标准库string类的简化版本,命名为String。你的类应该至少有一个默认构造函数和一个接受C风格字符串指针参数的构造函数。使用allocator为你的String。
2024-04-26 12:03:06 110
原创 C++ //练习 13.43 重写free成员,用for_each和lambda(参见10.3.2节,第346页)来代替for循环destroy元素。你更倾向于哪种实现,为什么?
【代码】C++ //练习 13.43 重写free成员,用for_each和lambda(参见10.3.2节,第346页)来代替for循环destroy元素。你更倾向于哪种实现,为什么?
2024-04-26 11:01:44 110
原创 C++ //练习 13.42 在你的TextQuery和QueryResult类(参见12.3节,第431页)中用你的StrVec类代替vector<string>,以此来测试你的StrVec类。
C++ Primer(第5版) 练习 13.42
2024-04-26 10:56:33 93
原创 C++ //练习 13.41 在push_back中,我们为什么在construct调用中使用后置递增运算?如果使用前置递增运算的话,会发生什么?
C++ Primer(第5版) 练习 13.41
2024-04-26 09:55:11 50
原创 C++ //练习 13.40 为你的StrVec类添加一个构造函数,它接受一个Initializer_list<string>参数。
【代码】C++ //练习 13.40 为你的StrVec类添加一个构造函数,它接受一个Initializer_list参数。
2024-04-26 09:39:59 127
原创 C++ //练习 13.39 编写你自己版本的StrVec,包括自己版本的reserve、capacity(参见9.4节,第318页)和resize(参见9.3.5节,第314页)。
【代码】C++ //练习 13.39 编写你自己版本的StrVec,包括自己版本的reserve、capacity(参见9.4节,第318页)和resize(参见9.3.5节,第314页)。
2024-04-26 09:34:31 46
原创 LeetCode //C - 40. Combination Sum II
【代码】LeetCode //C - 40. Combination Sum II。
2024-04-26 07:52:19 471
原创 C++ //练习 13.38 我们并未使用拷贝和交换方式来设计Message的赋值运算符。你认为其原因是什么?
C++ Primer(第5版) 练习 13.38
2024-04-25 10:34:58 167
原创 C++ //练习 13.37 为Message类添加成员,实现向folders添加或删除一个给定的Folder*。这两个成员类似Folder类的addMsg和remMsg操作。
【代码】C++ //练习 13.37 为Message类添加成员,实现向folders添加或删除一个给定的Folder*。这两个成员类似Folder类的addMsg和remMsg操作。
2024-04-25 10:28:32 184
原创 C++ //练习 13.36 设计并实现对应的Folder类。此类应该保存一个指向Folder中包含的Message的set。
【代码】C++ //练习 13.36 设计并实现对应的Folder类。此类应该保存一个指向Folder中包含的Message的set。
2024-04-25 10:25:20 161
原创 C++ //练习 13.33 为什么Message的成员save和remove的参数是一个Folder&?为什么我们不将参数定义为Folder或是const Folder&?
C++ Primer(第5版) 练习 13.33
2024-04-25 09:47:46 123
原创 C++ //练习 13.32 类指针的HasPtr版本会从swap函数受益吗?如果会,得到了什么益处?如果不是,为什么?
C++ Primer(第5版) 练习 13.32
2024-04-25 09:10:05 105
原创 C++ //练习 13.31 为你的HasPtr类定义一个<运算符,并定义一个HasPtr的vector。为这个vector添加一些元素,并对它执行sort。注意何时会调用swap。
C++ Primer(第5版) 练习 13.31
2024-04-25 09:05:24 76
原创 C++ //练习 13.30 为你的类值版本的HasPtr编写swap函数,并测试它。为你的swap函数添加一个打印语句,指出函数什么时候执行。
【代码】C++ //练习 13.30 为你的类值版本的HasPtr编写swap函数,并测试它。为你的swap函数添加一个打印语句,指出函数什么时候执行。
2024-04-25 08:58:01 116
原创 C++ //练习 13.29 解释swap(HasPtr&,HasPtr&)中对swap的调用不会导致递归循环。
C++ Primer(第5版) 练习 13.29
2024-04-25 08:51:33 186
原创 LeetCode //C - 38. Count and Say Medium Topics Companies
【代码】LeetCode //C - 38. Count and Say Medium Topics Companies。
2024-04-25 07:42:53 735
原创 C++ //练习 13.28 给定下面的类,为其实现一个默认构造函数和必要的拷贝控制成员。
【代码】C++ //练习 13.28 给定下面的类,为其实现一个默认构造函数和必要的拷贝控制成员。
2024-04-24 12:07:07 204
原创 C++ //练习 13.26 对上一题中描述的StrBlob类,编写你自己的版本。
【代码】C++ //练习 13.26 对上一题中描述的StrBlob类,编写你自己的版本。
2024-04-24 09:40:59 103
原创 C++ //练习 13.25 假定希望定义StrBlob的类值版本,而且希望继续使用shared_ptr,这样我们的StrBlobPtr类就仍能使用指向vector的weak_ptr了。你修改后的类
C++ Primer(第5版) 练习 13.25
2024-04-24 09:33:40 87
原创 C++ //练习 13.24 如果本节中的HasPtr版本未定义析构函数,将会发生什么?如果未定义拷贝构造函数,将会发生什么?
C++ Primer(第5版) 练习 13.24
2024-04-24 09:25:29 136
原创 C++ //练习 13.23 比较上一节练习中你编写的拷贝控制成员和这一节中的代码。确定你理解了你的代码和我们的代码之间的差异(如果有的话)。
C++ Primer(第5版) 练习 13.23
2024-04-24 09:17:32 152
原创 C++ //练习 13.22 假定我们希望HasPtr的行为像一个值。即,对于对象所指向的string成员,每个对象都有一份自己的拷贝。我们将在下一节介绍拷贝控制成员的定义。但是,你已经学习了定义这些
C++ Primer(第5版) 练习 13.22
2024-04-24 09:10:34 128
原创 C++ //练习 13.21 你认为TextQuery和QueryResult类需要定义它们自己版本的拷贝控制成员吗?如果需要,为什么?如果不需要,为什么?实现你认为这两个类需要的拷贝控制操作。
C++ Primer(第5版) 练习 13.21
2024-04-24 09:10:14 171
原创 C++ //练习 13.20 解释当我们拷贝、赋值或销毁TextQuery和QueryResult类(参见12.3节,第430页)对象时会发生什么。
C++ Primer(第5版) 练习 13.20
2024-04-24 09:09:54 91
原创 C++ //练习 13.19 你的Employee类需要定义它自己的拷贝控制成员吗?如果需要,为什么?如果不需要,为什么?实现你认为Employee需要的拷贝控制成员。
C++ Primer(第5版) 练习 13.19
2024-04-23 10:52:56 201
原创 C++ //练习 13.18 定义一个Employee类,它包含雇员的姓名和唯一的雇员证号。为这个类定义默认构造函数,以及接受一个表示雇员姓名的string的构造函数。每个构造函数应该通过递增一个
C++ Primer(第5版) 练习 13.18
2024-04-23 10:50:01 194
原创 C++ //练习 13.17 分别编写前三题中所描述的numbered和f,验证你是否正确预测了输出结果。
【代码】C++ //练习 13.17 分别编写前三题中所描述的numbered和f,验证你是否正确预测了输出结果。
2024-04-23 09:56:03 247
原创 C++ //练习 13.16 如果f中的参数是const numbered&,将会怎样?这会改变输出结果吗?如果会改变,为什么?新的输出结果是什么?
C++ Primer(第5版) 练习 13.16
2024-04-23 09:37:36 211
原创 C++ //练习 13.15 假定numbered定义了一个拷贝构造函数,能生成一个新的序号。这会改变上一题中调用的输出结果吗?如果会改变,为什么?新的输出结果是什么?
C++ Primer(第5版) 练习 13.15
2024-04-23 09:34:02 121
原创 C++ //练习 13.14 假定numbered是一个类,它有一个默认构造函数,能为每个对象生成一个唯一的序号,保存在名为mysn的数据成员中。假定nubmered使用合成的拷贝控制成员,并给定如下
C++ Primer(第5版) 练习 13.14
2024-04-23 09:31:08 191
原创 C++ //练习 13.13 理解拷贝控制成员和构造函数的一个好方法是定义一个简单的类,为该类定义这些成员,每个成员都打印出自己的名字:
C++ Primer(第5版) 练习 13.13
2024-04-23 09:13:17 160
原创 C++ //练习 13.12 在下面的代码片段中会发生几次析构函数调用?
【代码】C++ //练习 13.12 在下面的代码片段中会发生几次析构函数调用?
2024-04-23 09:06:05 162
原创 C++ //练习 13.11 为前面练习中的HasPtr类添加一个析构函数。
【代码】C++ //练习 13.11 为前面练习中的HasPtr类添加一个析构函数。
2024-04-23 09:02:36 135
原创 C++ //练习 13.10 当一个StrBlob对象销毁时会发生什么?一个StrBlobPtr对象销毁时呢?
C++ Primer(第5版) 练习 13.10
2024-04-23 09:00:20 210
原创 C++ //练习 13.9 析构函数是什么?合成析构函数完成什么工作?什么时候会生成合成析构函数?
C++ Primer(第5版) 练习 13.9
2024-04-23 08:56:46 134
原创 C++ //练习 13.8 为13.1.1节(第443页)练习13.5中的HasPtr类编写赋值运算符。类似拷贝构造函数,你的赋值运算符应该将对象拷贝到ps指向的位置。
【代码】C++ //练习 13.8 为13.1.1节(第443页)练习13.5中的HasPtr类编写赋值运算符。类似拷贝构造函数,你的赋值运算符应该将对象拷贝到ps指向的位置。
2024-04-23 08:45:09 99
空空如也
在函数中产生的指针变量无法在函数指针的参数中传递。
2023-10-09
用指向指针的指针动态分配二维数组后,再用指向指针的指针输入数据和输出数据出现问题。
2019-09-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人