现代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++的格局进行了简要的讨论,希望对大家有所帮助。

时间: 2024-11-04 03:02:55

现代C++新四大名著及C++学习杂谈的相关文章

强化学习杂谈

目录 强化学习从入门到放弃 杂谈 MDP MP MRP MDP Planning by Dynamic Programming iterative policy evaluation policy iteration value iteration 蒙特卡洛 and TD Monte-Carlo Policy Evaluation TD:Temporal-Difference Learning MODEL FREE control GLIE MC Control Updating Action-

新知识的快速学习法

最近事情比较多,学习任务也很重.昨天想了想,把自己学习一门新知识的方法又梳理了一遍,希望大家广泛评论啊~~~妹纸在此谢过了.~~~~~~~

it新员工如何快速学习

沟通是学习的第一步: 我和一批新员工一起入职,我工作8年,其他5个新员工基本上工作年限在1~2年之间,经过了3天之后出现了截然不同给的2种情况 第一天项目组给我分配开发需求,其他5人在学习,主要是我的工作经验比较长,项目组认为我参与进来没有问题.          第二天我一边自学习一遍找周围同事沟通,其他5人在接受了一次半个小时的培训.                    在这天他们基本上都是一边看资料一边娱乐...          第三天我的一个功能模块出来了一半,其他5人的工程都没搭建

7月新的开始 - Axure学习03 - 布尔运算、表单元件

布尔运算 布尔运算:是一种数字符号化的逻辑推演法.包含联合.相交.相减等 在图形处理中,通过联合.相交.相减等操作使基本的图形组合产生新的形体 操作 准备 蓝色(底部).绿色(顶部) 合并:两个图形合并成一个.底部的颜色覆盖顶部的颜色.外框也合并 结合:两个图形合并成一个.底部的颜色覆盖顶部的颜色.外框不被合并 组合:两个图形不会合并成一个.颜色还是维持之前的颜色 去除:删除顶层的(重合部分也被删除掉) 相交:只保留相交的部分.颜色保留底层的颜色 排除重叠:删除重合的部分.保留不重合的部分.颜色

C# 4.0 新特性dynamic (待学习)

随便翻看了一下dynamic,在网上拷贝了一个例子,先贴出来等有空了再慢慢消化 static void Main(string[] args) { dynamic d = new MyDynamicObject(); d.Mytable = "ojlovecd"; d.ojlovecd = "wang"; Console.WriteLine(d.Mytable);//新加的字段,VS不会自动提示 Console.WriteLine(d.ojlovecd);//新加的

JAVA 8 新特性 (值得学习)

JAVA 8 已经出现好长时间了,大的互联网公司很多都已经使用了,甚至很多知名互联网公司踩过很多坑,也有一些大牛分享出了他们的实战经验.去很多知名的互联网公司经常会被面试官问,你了解java 8吗?你知道它的一些新特性吗?好像似乎成了一面面试官必问的一道题目.这篇博文,只是简答的介绍了一下新特性,同学们还得自己实际操作,深入了解,最好能实际应用到项目里,如果你是项目组里用的比较早,用的比较多的同学,还会被其他的同事注意到你,哈哈. Lambda表达式和函数式接口 下面就是简单的lambda表示的

使用Google App Engine开始新的网站开发学习

继长时间的迷茫后,我发现还是回归php网站开发更适合我,或者没有那么深刻,但至少要做点事情.不知道以后将从事什么样的工作,但现在找点事情做还是很好的.所以,为了激发我学习的热情,我在网上搜了一下免费云空间,发现还是很多可以用的.最好的还是google的google app engine了. 今天在上面成功部署网站.简单步骤如下(引自:http://www.360doc.com/content/13/0310/10/11729272_270525195.shtml): (不能复制,直接点击链接吧!

苹果新革命引发iOS学习新方法

苹果系统凭借其流畅的系统和良好的用户体验赢得了一致好评,由于对ios系统有浓厚的兴趣,所以最近一直对苹果ios系统有关注度.今年以来一直在学习有关ios方面的知识,最近利用空余时间分享一些我在扣丁学堂在线学习的有关学习ios的方法,希望能够帮助大家研究iphone和ipad.做程序的都知道,iphone和ipad都是用Objective-C语言来开发的,所以一般情况在学习ios之前,最好有一定的Objective-C基础.学习之前了解和学习一些关于Objective-C的语法基础和规则对往后帮助

学习杂谈:费曼学习法和show me the code

最近陷入一个困惑,就是在参加面试的时候,很多学过的东西总是记不住或是记得不准确,从而在需要表述概念的时候,并不能很好的表达出来.我仔细分析了一下原因应该有两个,其一是语言表达能力,其二是对知识本身的掌握程度. 我特别想对第二点进行一个延伸的思考,以便形成一套自己的学习方法来辅助自己掌握知识.我一直相信勤能补拙,但我更相信学习是有方法论的,是有捷径的,有时候好的方法比盲目的努力更有用. 我理解的费曼学习法 回顾自己以前的学习生涯,其实我常常会运用"费曼学习法",只是当时自己根本不理解那是