精通C++听起来好像就是一个笑话。为何C++比别的语言难学那么多?其实这基本上是由于C++之父Bjarne Stroustrup 说过的一句话“我特别的讨厌语言的设计者把本身的喜爱强加给用户”(看向go)。结果C++为了避免限制你的想法,因而也就变成了如今的样子-- ,那么如何学好C++,甚至是出色掌握C++?程序员

1.谈谈C++的书籍。web
没有,也不可能有一本书对于全部人来讲都是最好的。不过对于那些真正的程序员来讲,若是他喜欢从“经典风格”的书中间学习一些新的概念和技术,我推荐个人The C++ Programming Language, 1998年的第三版和特别版。那本书讲的是纯而又纯的C++,彻底独立于平台和库(固然得讲到标准库)。该书面向那些有必定经验的程序员,帮助他们掌握C++,但不适合毫无经验的初学者入门,也不适合那些临时程序员品尝C++快餐。因此这本书的重点在于概念和技术,并且在完整性和精确性上下了很多功夫。面试

2. 学习C++要花多长时间?编程
这要看你说的“学习”是什么意思了。若是你是一个Pascal程序员,你应该能很快地使你的C++水平达到与Pascal相近的程度;而若是你是一个C程序员,一天以内你就能学会使用C++进行更出色的C风格编程。另外一方面,若是你想彻底掌握C++的主要机制,例如数据抽象,面向对象编程,通用编程,面向对象设计等等,而此前又对这些东西不很熟悉的话,花上个一两年是不足为奇的。那么是否是说这就是学习C++所须要的时间呢?也许再翻一番,我想打算成为更出色的设计师和程序员最起码也要这么长的时间。若是学习一种新的语言不能使咱们的工做和思想方式发生深入的变革,那又何苦来哉?跟成为一个钢琴家或者熟练掌握一门外语相比,学习一种新的、不一样的语言和编程风格还算是简单的。编程语言

3. 了解C语言是学习C++的前提条件吗?函数
否!C++中与C相近的子集其实比C语言自己要好学,类型方面的错误会少一些,也不像C那样绕圈子,还有更好的支持库。因此应该从这个子集开始学习C++。学习

4. 要想成为真正的OO程序员,我是否是得先学习Smalltalk?设计
否。若是你想学Smalltaok,尽管去学。这种语言颇有趣,并且学习新东西老是一个好主意。可是Smalltalk不是C++,并且把Smalltalk的编程风格用在C++里不会有什么好结果。若是你想成为一个出色的C++程序员,并且也没有几个月的时间百无聊赖,请你集中力量学好C++以及其背后的思想。调试

5. 我如何开始学习C++?视频
这取决于你的基础和学习动机。若是你是个初学者,我想你最好找个有经验的程序员来帮助你,要否则你在学习和实践中不可避免的犯下的种种错误会大大地打击你的积极性。另外,即便你的编译器配备了充足的文档资料,一本C++书籍也永远是必不可少的,毕竟文档资料不是学习编程思想的好教材。
6. 怎样改进个人C++程序?
很差说。这取决于你是怎么使用该语言的。大多数人低估了抽象类和模板的价值,反过来却肆无忌惮地使用造型机制(cast)和宏。这方面能够看看个人文章和书。抽象类和和模板的做用固然是提供一种方便的手段建构单根的类层次或者重用函数,但更重要的是,它们做为接口提供了简洁的、逻辑性的服务表示机制。
7. 语言的选择是否是很重要?
是,但也别期望奇迹。不少人彷佛相信某一种语言可以解决他们在系统开发中遇到的几乎全部问题,他们不断地去寻找完美的编程语言,而后一次次的失败,一次次的沮丧。另一些人则将编程语言贬为可有可无的细节,把大把大把的银子放在开发流程和设计方法上,他们永远都在用着COBOL, C和一些专有语言。一种优秀的语言,例如C++,能帮助设计者和程序员作不少事情,而其能力和缺陷又可以被清楚地了解和对待。
学习历来不是一我的的事情,要有个相互监督的伙伴,工做须要学习C/C++或者为了入行、转行学习C/C++的伙伴能够私信回复小编“学习”领取全套免费C/C++学习资料、视频

附:C++教程推荐:
《C语言/C++学习指南》单步调试,《C语言/C++学习指南》语法篇(从入门到精通), C++面试笔试精要,《C语言/C++学习指南》Qt界面开发篇,《C语言/C++学习指南》动态库和静态库,C Primer,用ffmpeg开发屏幕录制,C++ Boost库编程,利用webrtc搭建视频会议系统。
祝福你们!