msmmbl
V2EX  ›  C++

现代的 C/C++的特性怎样快速学习

  •  
  •   msmmbl · Oct 11, 2023 · 2817 views
    This topic created in 958 days ago, the information mentioned may be changed or developed.

    本人最早还是大学课堂时候接触了 C 语言。

    工作后主要还是使用 java 、php 、js 、go 、python 这类高级语言,这些高级语言每个版本升级看看有哪些新特性,慢慢的也就跟上了,也没特别去学习。

    身边没有写 C 的工作环境,C 的话主要还是玩兴趣的时候写写 arduino 、stm32 时候用用,也没用到什么高级特性,大学那套感觉够用。直到最近开始玩 soc 、linux 驱动这些的时候,发现了里面的 c 很多语法都好像既熟悉又陌生。还有用 esphome 写自定义 component 的时候遇到了 template ,也是不大熟悉。总感觉自己懂得 C 还是老的一套,不太适应新的环境了。

    想了解下,现在 2023 年 10 月份了,如果想要快速的学下最新的 C 或者 C++,了解他们的新特性,而不是从头开始(就是数据类型,运算符这种已经熟知的东西了),应该从哪方面入手。

    12 replies    2023-10-18 05:33:53 +08:00
    lyyQAQ
        1
    lyyQAQ  
       Oct 11, 2023
    我也不太熟悉,我觉得你可以试着找一个用 c++17 标准的项目练手,然后开一个 GPT Plus ,看不懂的代码让 GPT4 给你解释,解释不明白的让它具体举例解释,详细解释,结合场景解释,我比较笨,那些新特性我都是和 GPT 学的,我也是边工作边跟 GPT4 学的,c++感觉坑太多了,就各种编译问题就够头大的,一搜就得搜半天,GPT4 在这些方面超级擅长
    msmmbl
        2
    msmmbl  
    OP
       Oct 11, 2023
    @lyyQAQ 谢谢。从项目学习也是一个好办法。
    msmmbl
        4
    msmmbl  
    OP
       Oct 11, 2023
    @minami 真不错。惊了,看第一条,cpp 都有 Coroutines 了
    Mapz
        5
    Mapz  
       Oct 12, 2023
    c++ 11
    c++ 17
    c++ 20
    特性挨着在 https://en.cppreference.com/ 上看就行了
    建议从 20 往回看
    因为很多新 feature 是解决老的屎代码用的,用新不用老
    msmmbl
        6
    msmmbl  
    OP
       Oct 12, 2023
    @Mapz 谢谢建议,昨天我还在从低版本往高版本看,想着这么多版本看到啥时候呢,原来从 20 往回看才是正解
    Mapz
        7
    Mapz  
       Oct 12, 2023
    @msmmbl 但是从高版本看回去会出现有的概念不明白的情况,搜一下即可,例如 constexpr 这个概念每次都在迭代,如果你看的是 c++11 的,你会发现这玩意用处有限,如果你看的 c++17 的,你会发现卧槽牛逼,如果你看了 c++ 20 你会发现 concept 解决了很多 constexpr 解决的问题。从后面往前面看的好处是你一来看的就是很多功能的完全体。但是会出现这到底是啥的疑问。
    msmmbl
        8
    msmmbl  
    OP
       Oct 13, 2023
    @Mapz #7 明白,咱需要更多的关注它现在的样子,而不是发展历程
    xiaopanzi
        9
    xiaopanzi  
       Oct 14, 2023
    说个题外话,现代 C++内容很多;但是现代 C 的话,新增的内容很少,不会让人昏头转向,没有 C++那么激进。
    msmmbl
        10
    msmmbl  
    OP
       Oct 16, 2023
    @xiaopanzi 👌
    datadump
        11
    datadump  
       Oct 17, 2023
    C/C++ 新手入門教學懶人包: https://shengyu7697.github.io/cpp-tutorial/
    msmmbl
        12
    msmmbl  
    OP
       Oct 18, 2023
    @wjx0912 谢谢,挺不错的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   962 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 63ms · UTC 19:45 · PVG 03:45 · LAX 12:45 · JFK 15:45
    ♥ Do have faith in what you're doing.