Skip to Content
C++程序设计语言(第4部分:标准库)(原书第4版)
book

C++程序设计语言(第4部分:标准库)(原书第4版)

by 本贾尼 斯特劳斯特鲁普
August 2021
Intermediate to advanced
450 pages
6h 57m
Chinese
Pearson
Content preview from C++程序设计语言(第4部分:标准库)(原书第4版)

34.7 建议

[1]当你需要一个具有constexpr大小的序列时,使用array;34.2.1节。

[2]优先选择array而不是内置数组;34.2.1节。

[3]当你需要N个二进制位而N又不一定是整数类型的位宽时,使用bitset;34.2.2节。

[4]避免使用vector<bool>;34.2.3节。

[5]当使用pair时,考虑使用make_pair()进行类型推断;34.2.4.1节。

[6]当使用tuple时,考虑使用make_tuple()进行类型推断;34.2.4.2节。

[7]使用unique_ptr表示互斥所有权;34.3.1节。

[8]使用shared_ptr表示共享所有权;34.3.2节。

[9]尽量不使用weak_ptr;34.3.3节。

[10](仅)当由于逻辑上或性能上的原因,常用的new/delete语义不能满足需求时才使用分配器;34.4节。

[11]优先选择有特定语义的资源句柄而不是智能指针;34.5节。

[12]优先选择unique_ptr而不是shared_ptr;34.5节。

[13]优先选择智能指针而不是垃圾收集;34.5节。

[14]为通用资源的管理提供一致、完整的策略;34.5节。

[15]在大量使用指针的程序中处理泄漏问题,垃圾收集是非常有用的;34.5节。

[16]垃圾收集是可选的;34.5节。

[17]不要伪装指针(即使你不使用垃圾收集);34.5节。

[18]如果你使用垃圾收集,使用declare_no_pointers()令垃圾收集器忽略不可能包含指针的数据;见34.5节。

[19]不要随意使用未初始化内存,除非你确实必须这么做;34.6节。

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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

算法精讲视频课程:24篇系列讲座

算法精讲视频课程:24篇系列讲座

罗伯特·塞奇威克, 凯文·韦恩(Kevin Wayne)
可编程网络自动化

可编程网络自动化

Jason Edelman, Scott S. Lowe, Matt Oswalt
C语言核心技术(原书第2版)

C语言核心技术(原书第2版)

Peter Prinz, Tony Crawford
Go程序设计语言

Go程序设计语言

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

Publisher Resources

ISBN: 9787111544395