还在用 GCC4 版本的 c++ 主力语言小伙伴,来一起吐槽下?

339 天前
 xuelang

刚好最近写 c++遇到个问题:

C++ string 意外修改之深入理解 COW 写时复制

踩了一个算是低版本 gcc 的坑。然后想了解下市面上还有写 c++的,编译器也还是 gcc4.9 以下的吗?

大家有没有推动 gcc 版本升级,比如用到 gcc8 以上? 这样至少也能用到 c++17 的特性~

或者干脆升级到最新 gcc 或者 clang 版本,直接随时保持最新。这样能一直用最新特性。

如果没有升级,大家觉得最大的阻力是什么呢?

  1. 能用就行,又不是不能跑?
  2. 升级可能出问题,出了问题谁背锅?
  3. 做了老板不知道,白做?
2996 次点击
所在节点    程序员
34 条回复
codyfeng
339 天前
系统是 centos7 吗?用 gcc4.8.5 时我们一定会 preload 一个 so 把 string cow 禁用。另外我们也会把 chrono now()重写,gcc 原本的 now()每次都会 system call ,性能很差。
xuelang
339 天前
@nmap 我现在就是自己编译用高版本,但线上编译部署老版本
xuelang
339 天前
@clemente 是啊,clang14 很爽
kuituosi
339 天前
不愿意写 c++了,看着到处是缺点还是 rust 香
coderluan
339 天前
跨平台,Linux 下面倒是 Clang 最新版了,真心舒服,但是 Windows 下面明明有已经用了 2017 ,但还得兼容 vs2013 ,连 C++11 都不能完全支持,就难受,问就是给我们提供库的其他部门还在用 13 ,最蛋疼的是他们发的库还需要 vcruntime140 ,也就是说他们连 15 也用了.
cdzone
339 天前
不破不立,直接推动更新技术栈,更换工具链和升级运行环境或者直接更换语言
zwy100e72
339 天前
换工作比推动升级简单。没有情怀的话,换个项目也不难
duluosheng
339 天前
刚毕业的时候写了两年 VC6.0+MFC ,那时候都 2011 年了,我了个天。
xuelang
339 天前
@cdzone 说到技术栈,感觉 go 在编译工具链上还是很不错的
xuelang
339 天前
@duluosheng 还有用 98 的呢。。11 应该还是主流,离谱
koebehshian
339 天前
不能怪 GCC ,你把只读的 cast 掉,然后修改,不出 bug 就怪了。
xuelang
339 天前
@koebehshian 哈哈,确实
iOCZS
339 天前
c++觉得你清楚在干啥,一步步脱离他的掌控
cdzone
338 天前
@xuelang 如果要换语言了,还是推荐 rust ,编译工具链也是非常完善,就是编译速度较慢。和 c++性能/应用领域旗鼓相当。生态也很强大,个人感觉最近这几年生态上和 golang 不相上下,lib.rs 上面 crates 我基本上想要的都能找到。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1009556

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX