第十六章 16.1.4节练习

练习16.21

编写你自己的DebugDelete版本。

解答:

依旧参考书中的实现进行实现吧。


练习16.22

修改12.3节(第430页)中你的TextQuery程序,令shared_ptr成员使用DebugDelete作为他们的删除器(参见12.1.4节,第415页)

解答:

这个添加应该添加到类中析构函数中,要使用到shared_ptr的reset()成员函数来进行释放,将DebugDelete中的delete操作换成reset()

个人感觉这样做没有必要,可以在析构函数中,直接对该成员进行释放,没有必要用删除器。


练习16.23

预测在你的查询主程序中何时回执行调用运算符。如果你的预测和实际不符,确认你理解了原因。

略。


练习16.24

为你的Blob模板添加一个构造函数,她接受两个迭代器。

解答:

参考第596页下方的例子。


你可能感兴趣的:(C++,primer,5ed)