如何啃下C++这块复杂又难学的硬骨头?

2019 年 11 月 26 日 CVer

C++,一门名声在外的编程语言。作为一门多范式的通用编程语言,它适用的领域非常广泛,小到嵌入式,大到分布式服务器,到处可以见到 C++ 的身影。

 
它的发展前景也非常广阔,作为未来趋势的人工智能和机器学习,外衣是Python(模型描述),但是内核还是 C++(高性能运算) 。
 
此外,中国几乎所有大学计算机专业都会开设 C++ 课程,它也就成了很多人初入编程的第一语言,为什么 C++ 会受到这么大的关注呢?我总结了 3 点它的核心竞争力
 
  • 抽象能力:这意味着较高的开发效率,同时,更重要的是,不会因抽象而降低性能。
  • 性能:虽然完成同样的功能,C++ 需要的代码行数可能是 Python 的三倍,而性能则可以轻松达到 Python 的十倍以上。
  • 功耗:不管是移动设备,还是服务器,我们都越来越关注功耗。使用 C++ 通常意味着低功耗,电池能跑更长时间,服务器少花点电费。

然而,C++ 也是出了名的复杂、难学、难用。这样一来,熟练的 C++ 程序员也就自然而然获得了“水平很高,薪资很高”的名声。所以这也不完全是件坏事。
 
C++ 已经 40 岁了,但它仍然是一门非常流行且具有活力的语言。继沉寂了十多年,并终于发布语言标准的第二版——C++11——之后,C++ 以每三年一版的频度发布着新的语言标准,每一版都在基本保留向后兼容性的同时,提供着改进和新功能。
 
这些新功能让很多人望而生畏,以为学习成本非常高。但这是一种误解——这些新特性以及相关的编程实践,恰恰让 C++ 开发很多东西变得更为容易。
 
这些新功能是什么?为什么让C++变得更容易了?我想你可以在专栏《现代C++实战30讲》中找到答案。想高效学习 C++?我特别认同专栏作者前 Intel 资深软件架构师吴咏炜列出的这份学习路径,作者深耕 C++ 语言 30 年,相信肯定对你有帮助:   


相信你学完《现代C++实战30讲》专栏后,能把 C++ 当作一种实用的语言,能用它写出抽象但自然的代码,能对现代 C++这一熟悉而又陌生的语言有一个新的理解,能用它去更好地解决项目中的实际问题。
 
我始终相信,静下心来好好学习 C++,会让你受益终生,也会让你的编程之路走得更远
 


扫面上图二维码,免费试看👆
输入立减5元优惠口令CPLUSPLUS
到手价¥63
 

吴咏炜是谁?

吴咏炜,深耕 C++ 30 年的老程序员,前 Intel 资深软件架构师。
 
他 1995 年毕业于复旦大学,从事软件开发工作 20 多年,历任开发工程师、项目经理、开发经理、架构师等职务。
 
他热爱软件技术,热爱 C++,热爱开源;对于精炼、易于维护的代码追求不懈。他曾参与翻译《编程大师访谈录》。GitHub 上也能看到他在业余时间维护的一些小开源项目,如 libunibreak。

学习本专栏需要什么基础?

本专栏分为以下四大部分: 

基础篇,讲解现代 C++ 中的最重要特性,帮助你理解基础概念;

提高篇,讲述几个独立的专题,帮助你掌握 C++ 中的一些高级技巧;

实战篇,则讨论实际的工具和第三方库,帮助你打磨手头的兵器库;

未来篇,讨论 C++20 中即将引入的一些新特性,帮助你培养前瞻性。

 

希望大家留意的是,学习本专栏需要满足下面这些条件:

1. 适宜人群:具有 1~5 年工作经验的 C++ 程序员,熟悉基本编程概念和 C++ 的基本语法,包括指针、引用、异常、递归、class 等(不要求熟悉 C++11),有意愿了解更深入的 C++ 知识。

2. 不适宜人群:完全没学过 C++ 的人(本专栏非 0 基础课程)。

3. 专栏中的内容大部分时间都会使用不超过 C++17 标准的语言特性,最后在讲到 C++20 新特性时,某些实验功能可能会要求某个特定的编译器,更多细节请参见[课前必读]。

4. 由于专栏涉及到的都是较短的代码,故作者不会提供工程文件,建议你熟悉编译器的命令行,来快速编译代码。 

特别说明:专栏中案例+代码偏多,不建议仅通过音频学习,“文稿+音频+动手实践”为最佳学习方式。一些语法和规则细节,部分也会在文末提供参考资料。

 

学完本专栏,你将收获什么?

希望你在学习了本专栏之后,能够知道某个 C++ 的功能为什么存在和应该在什么情况下使用。那样的话,本专栏的目的就达到了。下面是本专栏的目录,可以一览你将会学到的内容:

 

相信学完本专栏,你一定会有下面四个方面的收获:
1. 掌握 C++ 语言现代特性
2. 领会 C++ 抽象表达精髓
3. 实践 C++ 开发惯用模式
4. 征服复杂性解决实际问题

现在订阅,有什么优惠?

1、早鸟价 ¥68,原价 ¥99。结算时,输入优惠口令「CPLUSPLUS」再减 5 元,到手价 ¥63,口令仅限「前 200 人」有效。
 
2、订阅后生成海报分享给朋友,每成功邀请一位好友,可获得 ¥24 返现,多邀多得,上不封顶。
 

扫面上图二维码,免费试看👆
 
点击【阅读原文】免费试读,输入优惠口令CPLUSPLUS再减 5 元,到手价 ¥63,口令仅限「前 200 人」有效。
登录查看更多
1

相关内容

人们为了让计算机解决各种棘手的问题,使用编程语言 编写程序代码并通过计算机运算得到最终结果的过程。
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
【干货书】Python语音计算导论,408页pdf
专知会员服务
101+阅读 · 2020年7月12日
【硬核书】群论,Group Theory,135页pdf
专知会员服务
125+阅读 · 2020年6月25日
机器学习速查手册,135页pdf
专知会员服务
338+阅读 · 2020年3月15日
《代码整洁之道》:5大基本要点
专知会员服务
49+阅读 · 2020年3月3日
中文知识图谱构建技术以及应用的综述
专知会员服务
312+阅读 · 2019年10月19日
阿里技术大牛:一份架构师成神路线图!
51CTO博客
30+阅读 · 2019年7月6日
每个架构师都应该培养业务思维
InfoQ
3+阅读 · 2019年4月21日
Java 工程师快速入门深度学习,可以从 Deeplearning4j 开始
人工智能头条
13+阅读 · 2018年12月14日
入门 | 深度学习模型的简单优化技巧
机器之心
9+阅读 · 2018年6月10日
【教程】如何从零开始构建深度学习项目?
七月在线实验室
7+阅读 · 2018年4月23日
零基础如何快速搭建一个推荐系统?
StuQ
5+阅读 · 2018年2月26日
Arxiv
19+阅读 · 2020年7月13日
Arxiv
24+阅读 · 2018年10月24日
A Multi-Objective Deep Reinforcement Learning Framework
Arxiv
6+阅读 · 2018年3月29日
Arxiv
10+阅读 · 2018年2月4日
VIP会员
相关VIP内容
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
【干货书】Python语音计算导论,408页pdf
专知会员服务
101+阅读 · 2020年7月12日
【硬核书】群论,Group Theory,135页pdf
专知会员服务
125+阅读 · 2020年6月25日
机器学习速查手册,135页pdf
专知会员服务
338+阅读 · 2020年3月15日
《代码整洁之道》:5大基本要点
专知会员服务
49+阅读 · 2020年3月3日
中文知识图谱构建技术以及应用的综述
专知会员服务
312+阅读 · 2019年10月19日
相关资讯
阿里技术大牛:一份架构师成神路线图!
51CTO博客
30+阅读 · 2019年7月6日
每个架构师都应该培养业务思维
InfoQ
3+阅读 · 2019年4月21日
Java 工程师快速入门深度学习,可以从 Deeplearning4j 开始
人工智能头条
13+阅读 · 2018年12月14日
入门 | 深度学习模型的简单优化技巧
机器之心
9+阅读 · 2018年6月10日
【教程】如何从零开始构建深度学习项目?
七月在线实验室
7+阅读 · 2018年4月23日
零基础如何快速搭建一个推荐系统?
StuQ
5+阅读 · 2018年2月26日
Top
微信扫码咨询专知VIP会员