现代C++新四大名著及C++学习杂谈
现代C++新四大名著及C++学习杂谈
翻开自己的博客,在2012年8月我曾经写过如下一篇博客,
<<C++学习的方法以及四大名著>>
http://www.cnblogs.com/pugang/archive/2012/08/17/2643710.html
想想时间过得真快,转眼5年了,在这5年中C++也发生了翻天覆地的变化。2012年的时候C++11刚刚确定不久,很多技术资料也没有来得及更新,编译器也没有完全支持主流的C++11新特性,自然很多公司对于新版本的C++使用也是持有一定的保留态度,但是经过了这5年的应用实践,C++社区和大部分的公司已经适应了C++11以后的新特性,可以说现代C++大格局已定,基本算是熟了。
我在2012年8月的博客中推荐的C++四大名著是如下四本,虽然这四本堪称经典中的经典,但是C++语言本身的发展,不断地有新的东西加入进来,格局自然也就发生了变化,因此,本文为大家推荐了现代C++中的新四大名著,原来的四本书仍然是必修课,在这里需要强调指出。
<<C++ Primer>>
<<Effective C++>>
<<Exceptional C++>>
<<Inside the C++ Object Model>>
新C++四大名著中的--
第一本是<<effective modern c++>>
推荐理由: Scott Meyers 潜心力作,几十条建议字字珠玑, 如果四本书只能选一本拿来学习的话,我选这本。
第二本 <<C++ Concurrency in Action>>
推荐理由: 由于其野蛮生长性,C++ 语言本身从来没有将线程升格到如此的高度,也从来没有语言级别的支持,每个平台使用自己的方式来实现多线程,可谓是八仙过海,各显神通,C++11带来了多线程实现上的统一,目前为止,写的最全面,最深入的也就是这本了。
第三本<<The C++ Standard Library A Tutorial and Reference 2nd Edition>>
推荐理由:除C++了语言本身的升级,标准库也有大面积的升级,C++大部分有用的功能,基本都是通过标准库来实现,可见这本书的重要性。
第四本 <<Optimized C++>>
推荐理由:对于C++优化的各个方面谈的比较透彻,作者是多年的C++老鸟,行文十分流畅。




最后推荐的两本辅助书籍是:
<<AUTOMATE THE BORING STUFF WITH PYTHON>>
<<Python Crash Course>>
推荐理由: 那么为什么要在这么一篇讲C++的文章中推荐Python资料呢?不解释了,相信能理解我这篇文章的人应该知道Python是什么..


总结
本文简要的讨论了现代C++的发展,并提出了现代C++新四大名著,同时推荐了另外的两本辅助的Python资料,同时对目前C++的格局进行了简要的讨论,希望对大家有所帮助。
现代C++新四大名著及C++学习杂谈的更多相关文章
- 5332盛照宗 如何获取新技能+c语言学习调查
如何获取新技能+c语言学习调查 你有什么技能比大多人(超过90%以上)更好? 如果问我有没有什么技能比大多数人,并且是90%的人好,我还真不敢说有,因为世界上有70亿人,要比63亿人做的好才行啊.我也 ...
- 20155332 如何获取新技能+c语言学习调查
如何获取新技能+c语言学习调查 你有什么技能比大多人(超过90%以上)更好? 如果问我有没有什么技能比大多数人,并且是90%的人好,我还真不敢说有,因为世界上有70亿人,要比63亿人做的好才行啊.我也 ...
- 7月新的开始 - Axure学习03 - 布尔运算、表单元件
布尔运算 布尔运算:是一种数字符号化的逻辑推演法.包含联合.相交.相减等 在图形处理中,通过联合.相交.相减等操作使基本的图形组合产生新的形体 操作 准备 蓝色(底部).绿色(顶部) 合并:两个图形合 ...
- C# 4.0 新特性dynamic (待学习)
随便翻看了一下dynamic,在网上拷贝了一个例子,先贴出来等有空了再慢慢消化 static void Main(string[] args) { dynamic d = new MyDynamicO ...
- Linux学习杂谈
Linux学习相关的... --------- 1.Linux是免费的2.Linux是安全稳定的3.linux是开源的,却世界的工程师都在维护系统--------------------熟悉脚本开发语 ...
- Java8 新特性Stream 的学习和使用方法
流(Stream) 流是java 8 中新引入的特性,用来处理集合中的数据,Stream 是一个来自数据源的元素队列并支持聚合操作. Java 中 Stream 不会存储元素. 数据源 流的来源. 可 ...
- 7月新的开始 - Axure学习06 - 母版的使用
母版的使用 主导航.底部.在很多页面上都是一样的: 如果在每一个页面都写一次的化.话.是非常浪费时间的,为了方便.可以使用母版: 母版可以帮助我们将一些元素重复利用,既可以保证页面的统一性.还可以节省 ...
- 7月新的开始 - Axure学习05 - 元件库的创建
元件库的创建 元件库的创建.载入.编辑和删除等操作 元件库的后缀名名:.rplib 学习结果: 实现iPhone6的原型图 分辨率是 1080*1920,现在我们按比例缩小去实现(360*640)
- 7月新的开始 - Axure学习04 - 发布与预览、菜单和表格元件、流程图和连接点、标记元件
Axure 的发布与预览 1.发布 2.生成html文件 常规:指定浏览器.工具栏的生成 页面.页面说明.元件说明.交互.标志(logo和描述).字体.移动设备等 3.发布到Axshare Axure ...
随机推荐
- R语言重要数据集分析研究——需要整理分析阐明理念
1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标 ...
- HTML4,HTML5,XHTML 之间有什么区别?
原始日期:2014-10-25 14:12 我来从HTML的历史谈谈他们3者的区别.在HTML的早期发展中,W3C成立之前,很多标准的制定都是在浏览器的开发者们互相讨论的情况下完成的,比如HTML 2 ...
- Centos6.5 源码编译安装 Mysql5.7.11及配置
安装环境 Linux(CentOS6.5 版).boost_1_59_0.tar.gz.mysql-5.7.11.tar.gzMySQL 5.7主要特性: 更好的性能:对于多核CPU.固态硬盘. ...
- Java 9 揭秘(7. 创建自定义运行时映像)
Tips 做一个终身学习的人. 在第一章节中,主要介绍以下内容: 什么是自定义运行时映像和JIMAGE格式 如何使用jlink工具创建自定义的运行时映像 如何指定命令名称来运行存储在自定义映像中的应用 ...
- NPOI 表头、页眉页脚重复设置
NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 ...
- 前端解读Webview
作为盛行已久的开发方式,Hybrid的相关介绍已经是相当普遍了.不过看到博客园里基本上都是从android或者ios的角度来讲解的,对于h5的前端来说看起来只能是一直半解.感觉有必要从前端的角度来理解 ...
- ASP.NET Core 四种释放 IDisposable 对象的方法
本文翻译自<Four ways to dispose IDisposables in ASP.NET Core>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! IDispos ...
- 关于标签中常用的disabled
.children("option[disabled]").removeAttr('disabled');
- VB6之断点续传
闲来无事,研究了下HTTP的断点续传,用VB6写了小Demo. 关于HTTP-Range细节可参考: http://www.w3.org/Protocols/rfc2616/rfc2616.html ...
- MySQL缓存之Qcache与buffer pool对比
Q:innodb buffer pool和Qcache的缓存区别? A: 1.Qcacche缓存的是SQL语句及对应的结果集,缓存在内存,最简单的情况是SQL一直不重复,那Qcache的命令率肯定是0 ...