Tom008
V2EX  ›  C

c++17 发布了,大家怎么看!

  •  
  •   Tom008 · Jul 19, 2016 · 7702 views
    This topic created in 3768 days ago, the information mentioned may be changed or developed.
    66 replies  •  2016-08-19 01:23:29 +08:00
    pheyer
    pheyer
    Jul 19, 2016
    1
    怎么是这么快,前年还在用 c++14
    momo1999
    momo1999
    Jul 19, 2016 via Android
    2
    来源?
    raysonx
    raysonx
    Jul 19, 2016 via Android
    3
    还是 C 好。 C++这个异端( doge )
    hitmanx
    hitmanx
    Jul 19, 2016
    5
    c++11 还没完全掌握呢。学 c++11 的时候有种感觉,这门语言真是变得越来越复杂了,很多以前很简单很确定的东西,在 c++11 里由于学艺不精感觉变得确定性降低了,比如 move 语义带来的一些问题。
    chrishine
    chrishine
    Jul 19, 2016
    6
    @raysonx 国内 C++ 实际标准还是 C++03 吧, C++11 都没什么大公司去用(前两年还有嘲笑说国内的 C++ 都被智子锁死了)。国内 C 实际标准也是 C99 吧,稍微新的标准也没多少公司用。
    htfy96
    htfy96
    Jul 19, 2016
    7
    感觉加进来的 Feature 还是太少,比如说很重要的模块就没进来。

    话说现在的处境和之前吐槽前端变得复杂的那一帖有些相似。

    不过我觉得业务的复杂必然会带来语法的复杂。 C++感觉可能历史包袱比较重是最大的问题。虽然 Rust 设计理念很好,但是学习曲线依旧比较陡峭。
    evanmeng
    evanmeng
    Jul 19, 2016
    8
    乐观估计 2020 年大概能用上?
    louk78
    louk78
    Jul 19, 2016
    9
    语言一通百通,无论怎样变化的,程序的灵魂始终还是是算法
    initialdp
    initialdp
    Jul 19, 2016 via Android
    10
    过度设计了
    thfurior
    thfurior
    Jul 19, 2016 via Android
    11
    C++11 还没普及呢,标准委员会迈的步子是不是太大了
    owt5008137
    owt5008137
    Jul 19, 2016 via Android
    12
    @htfy96 我也蛮期待 Module 的,可以大幅提升编译速度啊,好像还是不久前从 c++17 移到 5s 里的
    raysonx
    raysonx
    Jul 19, 2016
    13
    @chrishine C++ is a horrible language.
    个人觉得 C++现在的语法特性太多太繁杂了,已经没有兴趣去啃这些所谓的语言特性了。
    raysonx
    raysonx
    Jul 19, 2016
    14
    C++ is a horrible language. -- Linus Torvalds
    qinxi
    qinxi
    Jul 19, 2016
    15
    @chrishine C99 是大学课本,哈哈哈
    k9982874
    k9982874
    Jul 19, 2016 via iPhone
    16
    @chrishine c++11 包 boost 等生产库的一些功能纳入了标准,其实你一直在用 c++11
    yhxx
    yhxx
    Jul 19, 2016
    17
    C++ 11 还没学好呢。。。
    bingx86
    bingx86
    Jul 19, 2016
    18
    怎么说呢。。。。我还停留在 C++ 98 的时代,而且当年都是当 C 写的
    Tom008
    Tom008
    OP
    Jul 19, 2016
    19
    互联网时代,还是 java 和 php 好!(后端开发)
    stormpeach
    stormpeach
    Jul 19, 2016
    20
    c++可以被视为多种语言的联邦。。。。。现在他还在攻城拔寨。

    在工程里面更多的是用到它的子集吧,不过它的发展对其他语言是有示范意义的。
    congeec
    congeec
    Jul 19, 2016
    21
    @owt5008137 你不用 header guard? 不用 ccache?
    araraloren
    araraloren
    Jul 19, 2016
    22
    c++就是语言大佬的实验田,什么东西想起来了添加进去~~ 实验一下。。
    Smirnoff
    Smirnoff
    Jul 19, 2016❤️1
    23
    委员会那帮老家伙,都愿意创新, c++er ,连学习的勇气都没有吗,
    saberlion
    saberlion
    Jul 19, 2016
    24
    你问我兹磁不兹磁,我当然是兹磁的。
    skydiver
    skydiver
    Jul 19, 2016
    25
    上个月的新闻吧…… toooooold
    glogo
    glogo
    Jul 19, 2016
    26
    心好累,感觉再也不会再爱上 C++了
    Symars
    Symars
    Jul 19, 2016
    27
    sc3263
    sc3263
    Jul 19, 2016
    28
    多点特性多点便利。当然是支持咯。
    ahjsrhj
    ahjsrhj
    Jul 19, 2016 via Android
    29
    @evanmeng 太乐观了吧
    pagict
    pagict
    Jul 19, 2016
    30
    @evanmeng 确实是太乐观了 看看 c++11 的普及率。。。
    SlipStupig
    SlipStupig
    Jul 19, 2016
    31
    一大堆编译器又要不支持了!
    neilp
    neilp
    Jul 19, 2016
    32
    c++ 标准委员会的那帮人, 就是出来刷存在感的. 没事了,大家散了吧.
    SuperFashi
    SuperFashi
    Jul 19, 2016 via Android
    33
    反正基本上所有 oi 连 11 都不支持(抠鼻
    zysuper
    zysuper
    Jul 19, 2016
    34
    没啥实际意义,用 c 艹还是继续用,不用 c 艹的还是继续不用。
    zysuper
    zysuper
    Jul 19, 2016
    35
    目测了一下, 17 加了不少好东西啊,通用编程的 file system , networking , transactional memory 。。。
    tempuseraccount
    tempuseraccount
    Jul 19, 2016
    36
    刚把 C++11 中的东西看得差不多……
    工作中用的还是 C++03 呢
    crashX
    crashX
    Jul 19, 2016
    37
    其他语言过来的表示新语法肯定比之前的好用且合理, C++应该去掉那些古老的语法和规则。只增不减只会提高入门门槛,对社区繁荣不是好事。
    acros
    acros
    Jul 19, 2016
    38
    我接触的一些工程项目,小一点如 cocos2dx (好像也不小了),或者 ue4 这类庞大项目,对 C++11 支持还是很积极的····
    尤其是游戏引擎,新的基本都推荐 IDE 用 VS2015 了, 反正是添加新特性,又不是不兼容以前代码了···
    jasonlz
    jasonlz
    Jul 19, 2016
    39
    C++在很多地方还是无法替代的语言, C++11 很多特性已经给 C++带来很多革命性的变化,大多数的第三方开源库都已经全面 C++11 化, C++创立之初的宗旨就是灵活高效,不以固定范式来约束开发者,这样给开发者带来最大的自由度的同时也是增加了很多学习成本。个人觉得, C++11 以来的新变化,让 C++变得更好用了。
    wangxn
    wangxn
    Jul 19, 2016
    40
    现在高校的 OJ 一般不支持 C++11 。但是像 LeetCode 什么的都是支持的了。
    有了 C++11 ,可以用 auto 、 range-based for loop 、 unordered_xx 、 template<x<y>>这些大杀器,很是方便。
    suckli
    suckli
    Jul 19, 2016
    41
    然而我司的 GCC 连 C++11 的特性都不支持
    yehuobumie
    yehuobumie
    Jul 19, 2016
    42
    挺强的
    yehuobumie
    yehuobumie
    Jul 19, 2016
    43
    <a>***</a>
    strwei
    strwei
    Jul 19, 2016
    44
    以前我一直打的是 c 艹,现在知道了原来叫 c 加加(手动滑稽
    allenx
    allenx
    Jul 19, 2016❤️1
    45
    c++基本上在客户端领域普及比较快,包括 PC/Android/iOS 。在服务器领域简直是老牛拉破车,各种被扯后腿,传说百度的 GCC 被三体人锁定在 3.x 再也上不来了。
    ilotuo
    ilotuo
    Jul 19, 2016❤️1
    46
    一直把 c++当 c 用..
    inahesun8712
    inahesun8712
    Jul 19, 2016
    47
    也学 chrome 刷版本号了 不知道编译器能不能跟上,
    jeffersonpig
    jeffersonpig
    Jul 19, 2016
    48
    想起上礼拜把写好的代码扔公司开发环境上编译,各种 C++11 的 std 函数报错
    fetich
    fetich
    Jul 19, 2016
    49
    C++11 到 14 ,感觉花了很长时间,到 17 怎么有种瞬间的错觉
    everettjf
    everettjf
    Jul 19, 2016
    50
    可以继续练剑了
    kingddc314
    kingddc314
    Jul 19, 2016
    51
    17 年,那就得用 C 艹 17 ,今年,还是用 11 吧。。
    billlee
    billlee
    Jul 19, 2016
    52
    还在用 C++0x
    russj
    russj
    Jul 19, 2016
    53
    只是定了个标准,明年才发布呢
    azh7138m
    azh7138m
    Jul 19, 2016 via Android
    54
    @wangxn OJ 上主要是算法题, leetcode 不是算法题,主要是熟悉熟悉语法和一些小技巧,其实现在的 OJ 可以用 C++11 的,管理员懒得搞而已
    htfy96
    htfy96
    Jul 20, 2016
    55
    @wangxn Codeforces 也支持 C++11
    oska874
    oska874
    Jul 20, 2016
    56
    去年才开始用 c++11 和 c99
    zywx
    zywx
    Jul 20, 2016
    57
    我上的大学里还在用 VC++6.0 上 c++课,想普及 c++11 真是难
    不过 c++11 已经很方便了,对 17 持观望态度
    linux40
    linux40
    Jul 20, 2016 via Android
    58
    关于模块,感觉 c++之前有很多特性就是来缩短编译时间的,然而还是不是很令人满意,终于提出模块的话,之前有些就有些多余了。。。
    linux40
    linux40
    Jul 20, 2016 via Android
    59
    还有像文件系统啊,网络啊,这些也太大头了吧,是要学 java ,把什么都放进标准库么。。。
    hitmanx
    hitmanx
    Jul 20, 2016
    60
    很多库是 boost 里一点点搬过来的吧,其实蛮方便的,尤其是写跨平台的应用时。每个OS比如文件系统\线程库都有自己的一套,自己写 wrapper 都得写半天,还不如它的 bug 少、稳定.
    cchange
    cchange
    Jul 20, 2016 via iPhone
    61
    还在用最古老的 c++ 98 的飘过
    lsmgeb89
    lsmgeb89
    Jul 29, 2016
    62
    挺好的,标准库丰富了,省得自己造轮子了。
    jocover
    jocover
    Jul 29, 2016
    63
    c++11 还没怎么用呢
    owt5008137
    owt5008137
    Aug 13, 2016 via Android
    64
    @congeec header guard 是啥呀?预编译头吗? ccache 的提升其实非常有限。特别是用 cmake 的时候
    owt5008137
    owt5008137
    Aug 13, 2016 via Android
    65
    @congeec 刚刚搜了一下,还真是忘了这个东西叫 header guard 。但是无论用 header guard 还是#progma once 。解决不了真正的编译速度的问题,真正影响编译速度的是大量的模板推断和头文件依赖,只要头文件一改,所以依赖这个头文件的文件都要重新编译。但是 Module 可以解决掉头文件依赖的问题
    FrankHB
    FrankHB
    Aug 19, 2016
    66
    @owt5008137 “可以”也并没有什么卵用。
    要知道#include <h-char-sequence>这种形式可是整个 implementation-defined ,只要实现高兴都可以允许塞个图灵完备的语言实现进<>中间去。实际呢?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4162 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 130ms · UTC 03:48 · PVG 11:48 · LAX 19:48 · JFK 22:48
    ♥ Do have faith in what you're doing.