不是来踢馆的,我老 c++程序员,在学习 c++20
这话题贴别的论坛没人看
大部分人宣称会 c++,其实都是 C
c++98 是什么水平? 就是需要一大片 n 个对象的内存,使用 vector 而不是 new[n] 可是我猜很多面试官的提问都是 delete[]而不是 delete 才能和 new[]配对
这面试官自己都没有达到 98 水平
这烂问题就不该问了
1
slideclick OP 好冷清。。。
|
![]() |
2
InkStone 49 天前
没觉得。就我看到的项目里,更后面的用得不多,但 C++11 的特性已经用得比较普遍了。
new 这个关键字极少出现在现在的代码里。 |
3
slideclick OP @InkStone 谢谢分享!
|
![]() |
4
iaiuse 49 天前 via iPhone
弱弱问下,一般啥系统用它比较多呢
|
5
slideclick OP @iaiuse 2 楼权威啊
|
![]() |
6
Zarhani 49 天前 via Android
至少也得掌握到 C++17 ,我觉得 C++11 还是缺胳膊少腿,到 C++17 才相对完美
|
![]() |
7
Zarhani 49 天前 via Android
至于那种 C++98 或 C 风格的旧式用法,就应该直接禁掉
|
8
slideclick OP @Zarhani 我是看远程工作有个招 c++的 20k 上限,底下有个说你这数顶多找个 c++11.
底下一堆人说 20k 太低了,然后题主找到了人了很快。 我是有感而发。我在那个帖子发了更多言,点我可以看到 |
![]() |
9
chashao 49 天前
你说的这种应该叫 C with STL 吧,哈哈
|
10
slideclick OP @chashao 对呀,达到我说的用法,还没有到 11 呢
|
11
Youkexin 49 天前
也不至于感觉, 智能指针, lambda 表达式总归都要用的, promise 这种也常用, 这些特性起码 11, 14 起步, 17 应该是比较主流的现在.
然后 C++不至于才 20k 吧, 资深一点 50k 应该有的吧, 当然也看行业细分领域, 可能游戏行业芯片行业现在起步薪资高一点? 感觉是 |
12
slideclick OP @Youkexin 远程工作版,有个招量化的,已经招齐了,要求会英语,5 年经验,c++ ,会 linux 自己去看应该还在帖子 底下一堆人感慨卷 我分析了低工资的原因 15k-20k
|
![]() |
13
akakcolin 49 天前
我觉得自己就是 c++98 水平,实际更偏爱纯 C ,反正也不靠 c++找工作
|
![]() |
14
kandaakihito 49 天前
不懂 C++,我只会写 Java 。但是按照我的经验来看,98 不是比 20 要大吗,难道不应该数字越大越牛逼吗?
所以楼主的意思是,会用 C++98 的比 C++20 的要牛逼? |
15
slideclick OP @akakcolin 在找工作,有个日本的远程,每周要去日本,要求日语牛逼,上限 25k rmb 年轻人不要学 c++
|
![]() |
16
fcten 49 天前
c++ 的项目大都太老了,老项目要升级到 c++ 20 是很困难的。
更惨的是,为了支持那些老项目,系统环境和编译工具也没法升级,导致新项目也用不上 c++ 20…… |
![]() |
17
yosoroAida 49 天前 ![]() @kandaakihito c++ 98 是 C++ 98 年的标准,20 则是 C++ 20 年的标准。。。
|
18
slideclick OP ![]() @kandaakihito 你是对的,java 是 95 年发明的,大部分市面程序员对 c++的理解在上个世纪,这不是程序员的错,这 c++的失败,以至于发明人自己写初学者书,为了劝说 13 楼的 v 友, 你看 java python ruby c#的发明人谁亲自写书
|
![]() |
19
kandaakihito 49 天前
@yosoroAida #17 感谢。。。虽然但是,我只是在玩抽象。。。不过なんとなく还是ありがたく了
|
20
slideclick OP @fcten 是,现在还活着的项目,有的连 stl 都没有用
|
![]() |
21
penguinWWY 49 天前
前两年建项目都是 set(CMAKE_CXX_STANDARD 14)
这两年已经 set(CMAKE_CXX_STANDARD 17) 不过今年纯 C 写的多 |
22
Jerry23333 49 天前
领导说啥我用啥,面试官问啥我学啥,哈哈
|
23
zwy100e72 49 天前
我自己应该是 c++17 水平,但模板部分我是不及格的。
公司里的项目的话还是要看立项的年代,如果是比较早的项目很难有整体重构的机会,时间、人力等都不允许。 我见过因为看不懂 c++ mangled name 然后把 c++ 重构成 c 的项目... |
24
OBJECTION 49 天前
c++其实有点技术无用论, 因为项目都用到 c++了 说明都比较有历史了。。。 稳定压倒一切。
老板基本上也只看会不会出问题,顶多都是一些技术方案的改进等 |
25
linzyjx 49 天前 via Android
我们在用 17
但高级特性用得不多 |
26
cnbatch 49 天前
我工作内容基本不靠 C++,只有少数例外。而我的个人项目主要是 C++,版本在 C++14 以上。
即使是那极少数会用到 C++的工作项目,也是尽量弄到起码 C++17 。 反正我是拒绝 C++98 的,当初就是嫌弃 C++98 而放弃过一段时间,直到 C++11 出现后才重学重用 C++。 |
27
cnbatch 49 天前
关于「发明人自己写初学者书」,Python 发明者还真的出过相关的教学书籍,而且不少哦:
https://www.amazon.com/Books-Guido-van-Rossum/s?rh=n%3A283155%2Cp_27%3AGuido%2Bvan%2BRossum C 语言发明人也做过同样的事,出版的书一直到现在还能买得到。 |
28
vituralfuture 49 天前 via Android
我实习去的大厂已经升级到 C++20 了
|
29
z1nke 48 天前
我们是 C++17 ,从 C++14 升上来的
|
30
slideclick OP @Jerry23333 @cnbatch 你看看人家 26 楼,财(语)务(言)自由。我在找工作,11 的一万就行,98 的我得三万,98 跳 bug 太辛苦
|
31
Jerry23333 46 天前
@slideclick #30 是的,老屎山真的不敢碰,所有语言都是。之前在阿里时候那 java8 python2 都是百万行的,根本没法调,根本不敢动
|
32
Jerry23333 46 天前
@vituralfuture #28 新的项目一般会用的比较新,老项目基本不敢动。
|
33
hwdq0012 46 天前
我的 c++入门是用 c++11 写了一个 json 库, 基于我自己写的 c++静态反射框架, 0 经验 28k offer
|
34
slideclick OP @cnbatch 好奇大佬自己啥项目类型用 cpp
以前有个武大毕业谷歌的,出来创业, 说离开谷歌原因是大公司弄 c++是因为它机器多,压榨性能可以省很多钱比如电费, 但是是牺牲了个人。他出来创业用 clojure |
35
slideclick OP |
36
cnbatch 45 天前
@slideclick 网络 Proxy 类的工具( 2022 年开始做的),需要在 Windows 使用,还需要照顾 BSD 系列,这种情况下 C++是最优解
尤其是 BSD ,全部自带 C/C++编译器,用 C++就不需要额外安装其他编译器工具链,哪怕为了在某些 BSD (例如 NetBSD )使用 C++新版本引入了高版本编译器,也就改改编译参数的事 |
37
slideclick OP @akakcolin 做个笔记回应你的更喜欢 c:
"1.2024 年了,连个正常的官方包管理器都没有。 2.没有统一的编译器。 这些东西除了 C++其他主流现代语言都有了吧。 本质问题是 C++不是中心化的。 3.还要兼容 C 。 会 C++的人还得看得懂 C 代码,还要明白哪些 C 风格代码是不能用在 C++里面的。纯纯的增加负担。用 C 的人看不上 C++,用 C++的人还得自己搞懂 C " |
38
slideclick OP @vituralfuture 不夸张的说,中国互联网使用 c++的只有一家成功的,就是百度,它的行业单一,门槛极高。
腾讯是做 pc 上的软件起家的,如果它不是碰巧运气好抓住了张小龙当产品经理搞出来 wechat,腾讯今天就会像网易一样偏于一隅于游戏,而已 如果当年阿里 java 京东 c#有一个选择了 c++,那么 c++那个早就死多少回了 |
39
slideclick OP c++将会是最后一个被 ai 代替的岗位
因为大量 c++98/c-style 污染了训练数据 其实 js 本来也有这个地位,但是有了 ts 现在 |
![]() |
40
deetincelle 24 天前
@slideclick 看看 cursor 吧, js/ts 已经成第一个亡魂了
|
![]() |
41
ChainLock 17 天前
楼主用 c++做什么项目
|
43
slideclick OP @ChainLock 用户态开发。比较难找。很多嵌入式的 jd 写 C++,其实会 C 的工科生就可以干。很多 linux kernel 级别的包括存储基本是 C.
真正的 c++比如游戏,量化,门槛比较高。 游戏我没有经验,我也不想干游戏。 用户态也就剩下音视频,编译器了。后者门槛也高。 所以我劝年轻人别学 c++ |
![]() |
44
ChainLock 16 天前
@slideclick #43 我在学 c++,qt
|
45
wanmyome 15 天前 ![]() c++98 是标准不是水平,c++98 完全掌握的码畜水平不低
|