上游新闻

为您提供最新、最全的新闻资讯

科技

上游新闻2024年11月14日发布:看了那么多书,你为什么还是学不会C++

作者:于谦 | 责任编辑:Admin

本次大会汇集了来自全球各地的科技领袖,共同探讨未来科技趋势...

【新澳精准资料免费提供305】

【资料大全正版资料免费】

【新奥天天免费资料大全正版优势】
【新澳门彩历史开奖结果走势图表】
【澳门资料大全正版】
【澳门六开彩天天免费查询】
【澳门正版挂牌免费挂牌大全】
【新澳精选资料免费提供开】
【新澳门精准资料期期精准】
【六开彩澳门开奖结果查询】

看了那么多书,你为什么还是学不会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++,不要纠结该怎么学好,其实学习没有什么捷径,就是多练习,敲代码。有时间的时候就跟着老师学习,这样就少走弯路。不必有时候为了一个问题想了半天,还不得解决明白。

【新澳今天最新资料网站】 【2024澳门天天六开奖彩免费】 【四肖期期准免费资料大全】 【新奥门资料免费资料大全】 【新澳门彩走势】 【新澳精准资料免费提供最新版】 【新澳门资料大全正版资料六肖】

作者简介:白柳汐,资深科技记者,专注于人工智能和数字化转型领域的报道。

最新评论

迈克尔·伊雷 2024-11-13 19:18

我自己也是。

IP:73.48.4.*

安迪·瑟金斯 2024-11-13 18:18

看优秀的代码也比埋头用差劲的编码方式写垃圾代码要有效。

IP:52.30.6.*

荣仓奈奈 2024-11-13 19:19

都说Javascript是世界上最受误解的语言,其实C++何尝不是。

IP:98.99.3.*