先说一句,别的语言不敢说,反正C++是活的 。
大家一起来看看 C++ 的学习之路,从入门到精通都需要掌握什么样的技能。没有全部都掌握的同学,以后可千万别轻易说自己精通 C++ 。
废话不说,先上重点。
1. C++11/14/17 是什么?
C++ 最令程序员们头疼的就是他的不断变化,时不时有新的特性出来,有人说它是真正的动态语言,想想说的也对。
如今最新的 C++ 标准是 C++17, 也就是2017年颁布的,C++20 也将面世。
这么多的C++ 标准比起来,变化最大的是 C++11, 它新增了 Lambda 表达式等许多东西,甚至让很多程序员都觉得这是一门新的编程语言。
我曾经买过一本 Bjarne Stroustrup 的 《The C++ Programming Language - Special Edition》, 里面也只是有上图的前两部分,也就是基础部分和STL,所以当有次我看到公司代码库里的 C++ 代码的时候,我也在怀疑,这是 C++ 么?怎么跟我以前学的完全不一样了。
C++11 以前的标准称作传统 C++, 以后的称作现代 C++。另外,要是想学习c语言c++编程的加群:941,636,044,群里面有一些资源以及热心的大佬可以帮助解答问题的!
2. 如何看待 C++ 的不断变化
我看过 Bjarne Stroustrup 的说明,像C++11 这种标准的变化也是为了能够用户更友好,更加简单易学易用。
可是好像大多的程序员并不买账,不断扩充的语言特性与标准库让 C++ 变得繁冗而庞大,并且永远是在追求学习新标准的路上,甚至很多人开始弃用 C++, 我想这是 C++ 标准编委会不愿意看到的结局吧。
所以,正是由于这个原因, 在任何场合你都要谨慎地说自己很精通 C++, 因为即使你学会了 C++11乃至17、20, 未来可能还有 C++26。
这是一个外国人画的C++程序员自信心随时间变化曲线。
3. 如何才能学好 C++
这好像是越来越困难的一件事了。
大约十年前在我认真学完一本C++ 之后,我已经觉得自己精通了,但是后来,我才发现当初的我是多么的肤浅,我的水准也就是上图最上面的那个 c with classes !
想要学好并且精通 C++, 不单要学好类等基础知识,还得学会 STL,还要学习 C++1x 中的新特性,并且要适应 C++ 标准的不断变化。
C++ 这个坑很深,不过也不用太过害怕,我从事在线教育多年,将自己的资料整合建了一个Q群,对于有兴趣一起交流学习c/c++的初学者可以加群:941636044,里面有大牛会给予解答,也会有许多的资源可以供大家学习分享,欢迎大家前来一起学习进步!
网友评论