TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: I know a few high-level languages. Is it still worth learning C++?

4 点作者 kixpanganiban超过 8 年前
I specialize in Python, but I know a fair bit of Go, Elixir, PHP, and JavaScript (and its flavors).<p>That said, would learning C++ add to my [market] value as a developer, and&#x2F;or would it allow me to do things I otherwise could not with my current set of languages? If not, is there any reason at all why I should consider C++?

8 条评论

T-A超过 8 年前
C&#x2F;C++ is still the tool of choice when you need to eke out max performance from the available hardware. That could be because the hardware is weak (maybe an embedded system) or because you need real time performance (game engines come to mind) or because you need to perform very large calculations (e.g. train neural networks, simulate fluid dynamics).<p>When the going gets tough, the tough reach for their C&#x2F;C++ compilers. :)
devnonymous超过 8 年前
If you don&#x27;t know C, I would recommend to invest time in learning that first. Learning C++ would certainly not be a waste of time. However, if you want to be efficient about the use of your learning time, choose the technology&#x2F;languages that would come in handy for what you would like to do next.<p>C++ is seeing a revival of sorts due to IoT&#x2F;Automotive&#x2F;Fintech software etc. So from a career perspective it would be a good investment of time (if, for instance, you are inclined to work in those fields).<p>However, keep in mind what is being called Modern C++ (c++11 and later) is a completely different beast than C++ which is uttered in the C&#x2F;C++ sense.<p>My prediction is that the reality of C++ in the near future would be a mishmash of old and new C++ ...and it would go the Java way -- heavily adopted but a <i>lot</i> of bad code written by confused practitioners.
评论 #12902910 未加载
Rannath超过 8 年前
c&#x2F;c++ adds to the market value of a dev iff that dev needs it for their job. Same story with every other language. Javascript won&#x27;t help you get a ruby job for instance. You might consider learning C &amp; assembly, because they&#x27;ll give you a greater appreciation for what your computer is doing closer to the metal. You don&#x27;t have to be good, but learning to do at least basic stuff can help you be better with other languages.
评论 #12873488 未加载
itamarst超过 8 年前
C++ is fundamentally different insofar as it has no garbage collection. Which means it&#x27;s different enough that learning it will be educational (e.g. it means different forms of resource cleanup are possible: <a href="https:&#x2F;&#x2F;codewithoutrules.com&#x2F;2016&#x2F;03&#x2F;10&#x2F;compare-contrast&#x2F;" rel="nofollow">https:&#x2F;&#x2F;codewithoutrules.com&#x2F;2016&#x2F;03&#x2F;10&#x2F;compare-contrast&#x2F;</a>).<p>On the other hand, it&#x27;s also a massive language, and modern C++ is very different than the legacy code bases you&#x27;ll encounter in the real world. So it&#x27;s a large time commitment to learn it well enough to code well in anger.<p>If you have the time try skimming a tutorial, and doing some exercises, enough that you can get the differences in mindset. But it&#x27;s probably not the most efficient way to increase earnings, if that&#x27;s all you care about.
kahrkunne超过 8 年前
It&#x27;s always worth it to learn more languages. Every developer should learn C imho (it&#x27;s a very widely used, influential language and it&#x27;s pretty small). Seeing how C++ is essentially a superset of C, you might as well check it out after you learn C.<p>Also, don&#x27;t focus on your &quot;market value&quot;, focus on becoming a better developer. You&#x27;re a craftsman, not a piece of merchandise - have some pride in your craft. (not meaning to say you don&#x27;t, I just liked the sound of that)
informatimago超过 8 年前
I concur with Rannath, if you don&#x27;t have a C++ job, or you don&#x27;t want to contribute to some C++ free software, my advice would be to learn C.
评论 #12872454 未加载
tedmiston超过 8 年前
It&#x27;s hard to answer this question without knowing what it is you are doing or want to do. Python + C++ can be a good combo in the computer vision, pattern recognition, machine learning, etc spaces. But for say a normal web app developer, C++ doesn&#x27;t add much. I haven&#x27;t written any C++ since school.
wayn3超过 8 年前
I&#x27;d rather learn C.