C++17 标准正式发布:开发者可更简单地编写和维护代码 为什么我感觉越来越不能简单地编写代码了呢?/?? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
acgnsstech

C++17 标准正式发布:开发者可更简单地编写和维护代码 为什么我感觉越来越不能简单地编写代码了呢?/??

  •  1
     
  •   acgnsstech 2017 年 12 月 6 日 4136 次点击
    这是一个创建于 3062 天前的主题,其中的信息可能已经有所发展或是发生改变。
    C++ 17 是对 C++ 语言的重大更新,引入了许多新的语言特性:

    UTF-8 字符文字

    折叠表达式 (fold expressions):用于可变的模板

    内联变量 (inline variables):允许在头文件中定义变量

    在 if 和 switch 语句内可以初始化变量

    结构化绑定 (Structured Binding):for (auto [key,value] : my_map) {…}

    类模板参数规约 (Class Template Argument Deduction):用 pair p{1, 2.0}; 替代 pair<int, double>{1, 2.0};

    此外,C++ 17 还带来了并行 STL,派生自 Boost 的文件系统库等其他特性。


    GCC 和 LLVM/Clang 都有效提供了完整的 C++ 17 支持。
    24 条回复    2017-12-07 10:12:23 +08:00
    trys1
        1
    trys1  
       2017 年 12 月 6 日 via Android
    自从遇见了 go
    fyooo
        2
    fyooo  
       2017 年 12 月 6 日
    然而我厂还是用 C++11
    geelaw
        3
    geelaw  
       2017 年 12 月 6 日   1
    不懂现在的翻译是什么情况 deduction 是推导,不是归约,归约是 reduction。
    geelaw
        4
    geelaw  
       2017 年 12 月 6 日
    以及“ GCC 和 LLVM/Clang 都有效地提供了完整的 C++ 17 支持。”这话未免说得太满
    vvvvzhang
        5
    vvvvzhang  
       2017 年 12 月 6 日
    c++...
    再简单也是中级语言,比高级语言难太多了。。。
    harry890829
        6
    harry890829  
       2017 年 12 月 6 日
    @fyooo #2 我还在用 c++98 标准……
    soli
        7
    soli  
       2017 年 12 月 6 日   1
    CentOS 制约着 C++ 新标准的推广。

    待过的公司几乎都用 CentOS 做线上系统,而 CentOS7 最新的 GCC 是 4.8。
    这个版本的 GCC 连 C++11 都支持不全呢。
    shanechiu
        8
    shanechiu  
       2017 年 12 月 6 日
    @soli 源码安装 GCC 不行吗?
    shanechiu
        9
    shanechiu  
       2017 年 12 月 6 日
    @acgnsstech 新特性有什么好处?其实我还在学习 C++11 了
    wwqgtxx
        10
    wwqgtxx  
       2017 年 12 月 6 日 via iPhone
    @soli 部署上编译好的二进制不就得了
    BigNerd
        11
    BigNerd  
       2017 年 12 月 6 日
    还记得几年前写 C++ 11 的场景,后来转方向了。不得不说能把 C++ 写到一般意义上的好,我都非常佩服。
    3dwelcome
        12
    3dwelcome  
       2017 年 12 月 6 日
    @soli 这个锅 centos 表示不背。这世界上有个叫 cross compiler 的。
    coderluan
        13
    coderluan  
       2017 年 12 月 6 日
    个人观点:
    将来要么 C 语言(偏性能,可以带点 C++扩展),要么 Java/Python/Go (偏效率),C++想两全齐美,实际上已经跑偏了。
    soli
        14
    soli  
       2017 年 12 月 6 日
    @wwqgtxx
    @3dwelcome

    我不相信你们能说服运维部门这么干。
    vegito2002
        15
    vegito2002  
       2017 年 12 月 6 日
    @coderluan 我现在其实也是这个路线. 不过我是 Python 换 Swift.
    3dwelcome
        16
    3dwelcome  
       2017 年 12 月 6 日
    @soli 有啥不能说服的,cross-compiler 就是非源码发布二进制执行包而已。

    现在的运维用 docker 嗨的飞起,还不是一样没有源代码。
    sfqtsh
        17
    sfqtsh  
       2017 年 12 月 6 日 via Android
    支持
    CYKun
        18
    CYKun  
       2017 年 12 月 6 日 via Android
    C++为什么这么喜欢折腾语法?
    redsonic
        19
    redsonic  
       2017 年 12 月 6 日
    智商低了看不懂的语言。 到 C+3X 的时候估计只有大佬和 AI 在写 C++代码给自己打 patch。
    Tardis0127
        20
    Tardis0127  
       2017 年 12 月 6 日
    Less is more. C++ 过分了
    skadi
        21
    skadi  
       2017 年 12 月 6 日
    @geelaw c++17 全部特性,gcc7 和 clang5.0 已全部支持.
    gnaggnoyil
        22
    gnaggnoyil  
       2017 年 12 月 6 日
    @Tardis0127 相比于 Cpp 要解决的问题而言 Cpp 已经很 less 了.
    如果能够卸掉从上古时代的 C 中来的历史包袱的话还能更短点的呢.虽然这基本不可能就是了.
    caola
        23
    caola  
       2017 年 12 月 6 日
    centos 虽然躺枪了,也怪它默认的软件版本都相对比较低。
    个人觉得还是 debian 的好用。
    zke1e
        24
    zke1e  
       2017 年 12 月 7 日
    还好我写 C++ 顶多就用到模版,大多数时候就当一个支持对象的 C 来写
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     936 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 62ms UTC 19:15 PVG 03:15 LAX 12:15 JFK 15:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86