武医张鹏2024年11月14日发布:看了那么多书,你为什么还是学不会C++
作者:郑栋焕 | 责任编辑:Admin
本次大会汇集了来自全球各地的科技领袖,共同探讨未来科技趋势...
【新澳彩资料免费提供】 |
【澳门资料大全正版】 |
【2024新澳精准资料大全】 |
【新奥最快最准免费资料】 |
【2024澳门天天彩免费正版资料】 |
【2024年资料大全免费】 |
【新奥天天免费资料公开】 |
【新澳门天天开奖资料大全】 |
【澳门正版精准免费大全】 |
【新澳准资料免费提供】 |
看了那么多书,你为什么还是学不会C++?
都说Javascript是世界上最受误解的语言,其实C++何尝不是。现在网上流传的错误的C++学习方法一抓就是一大把。很多人在学习C++的过程中也走了许多弯路,浪费了不少时间。我自己也是。走了不少弯路。所以在码农的世界中,java逐渐有了统一江湖的味道。昔日的霸主C++虽面临失宠,却一直坚守着自己的传统领域。若干年前,初学编程的人还会纠结于偏向java还是偏向C++。随着java技术的快速发展和web应用的兴起,这个问题已经很长时间没有人提起了。
C++的语法灵活丰富,支持底层调用,是大多数操作系统的编程语言,也是游戏开发和图像处理领域的首选。然而正因为它灵活多变的语法,以及对使用者编程素养的高要求,决定了它不能像java一样迅猛发展。 你可能不是C++的拥趸。但如果你想深刻地理解编程的技术,让自己编写的程序变得更高效,更优雅,C++相关书籍值得花时间去读一读。
在学习C++的人当中,为什么会存在这么多错误认识?原因主要有三个,一是C++语言的细节太多。二是一些著名的C++书籍总在(不管有意还是无意)暗示语言细节的重要性和有趣。三是现代C++库的开发哲学必须用到一些犄角旮旯的语言细节(但注意,是库设计,不是日常编程)。这些共同塑造了C++社群的整体心态和哲学。
单是第一条还未必能够成气候,其它语言的细节也不少(尽管比起C++起来还是小巫见大巫),就拿javascript来说,作用域规则,名字查找,closure,for/in,这些都是细节,而且其中还有违反直觉的。但许多动态语言的程序员的理念我猜大约是学到哪用到哪罢。但C++就不一样了,学C++之人有一种类似于被暗示的潜在心态,就是一定要先把语言核心基本上吃透了才能下手写出漂亮的程序。这首先就错了。这个意识形成的原因在第二点,C++书籍。市面上的C++书籍不计其数,但有一个共同的缺点,就是讲语言细节的书太多——《C++ gotchas》,《Effective C++》,《More Effective C++》,但无可厚非的是,C++是这样一门语言:要拿它满足现代编程理念的需求,尤其是C++库开发的需求,还必须得关注语言细节,乃至于在C++中利用语言细节已经成了一门学问。比如C++模板在设计之初根本没有想到模板元编程这回事,更没想到C++模板系统是图灵完备的,这也就导致了《Modern C++ Design》和《C++ Template Metaprogramming》的惊世骇俗。
学习最佳编码实践比学习C++更重要。看优秀的代码也比埋头用差劲的编码方式写垃圾代码要有效。直接、清晰、明了、KISS地表达意图比玩编码花招要重要…像C/C++这种系统级语言,在学习的过程中必须要涉及到一些底层知识,如内存管理、编译连接系统、汇编语言、硬件体系结构等等等等知识(注意,这不包括过分犄角旮旯的语言枝节)。这些东西也就是所谓的内功了(其实最最重要的内功还是长期学习所磨练出来的自学能力)。
所以说。C++零基础初学者学习C++,不要纠结该怎么学好,其实学习没有什么捷径,就是多练习,敲代码。有时间的时候就跟着老师学习,这样就少走弯路。不必有时候为了一个问题想了半天,还不得解决明白。
【2O24澳门天天开好彩】 | 【澳门一肖一码一一子中特】 | 【新澳2024资料免费大全版】 | 【澳门资料大全正版免费资料】 | 【澳门管家婆四肖选一肖期期准】 | 【新澳资料免费最新】 | 【新澳门2024年资料大全管家婆】 | 【新澳门精准免费大全】 |
推荐文章
女子风雨夜跳河被救:父母要求增加30万元彩礼,男友提分手
C++的语法灵活丰富,支持底层调用,是大多数操作系统的编程语言,也是游戏开发和图像处理领域的首选。...
郑钦文赢了!追平李娜纪录 世界排名首进前五
不必有时候为了一个问题想了半天,还不得解决明白。...
突发!公立二甲医院停诊并要申请破产,网友评论区炸锅!
现在网上流传的错误的C++学习方法一抓就是一大把。...
女子11元拍下海景房,平台联系电话联系,丈夫曾拒收:以为是诈骗
看了那么多书,你为什么还是学不会C++?...
最新评论
梁晓丰 2024-11-13 16:16
所以说。
IP:89.76.9.*
钟嘉欣 2024-11-13 24:13
IP:59.80.1.*
周欢 2024-11-13 22:18
这首先就错了。
IP:47.26.5.*