- 主题:掐指一算,本青可以不用学c++20了
同事大部分是特定专业的,非cs的,主要精力在业务的正确性上,产品负责人也有抓住市场窗口尽快发布功能的压力。要是没时间压力,打磨代码当然没问题了。大部分人用惯了某些函数,可以用这些函数很快地实现功能,换写法有时候会踩坑。比如说把浮点数存到字符串,本来sprintf的%g一直没问题,结果换了std::to_string出问题了,后来发现后者默认保留6位小数,stringstream也不如sprintf好用。曾经尝试用regex递归处理数组解析,有可能表达式不够精炼,总是出错(像是和内存相关),后来自己用char*数组写就没这问题了。intel的mkl接口很原始,但很多计算相关的c++代码还是得调它,所以个人觉得c++的方向应该是提供更多好用的库,而不是花里胡哨的语法。
当然,从个人发展角度,肯定是多掌握一些最新的语法技巧更好。
【 在 libgcc 的大作中提到: 】
: 这种事说不上好不好
: 如果要吃c++这口饭的话,还是把代码朝c++风格靠比较合理,这样新人也更能学到点东西
: 现在在c++里还用char*处理字符串的我是觉得不合适
--
FROM 221.220.229.*
挺好的,vc6的有些语法和标准c++不符合,一些代码在gcc编译时出错或者结果不对,vs2008应该挺好了,如果不追求新语法,并且编出的程序没操作系统兼容性问题,没必要继续升级。
【 在 wangtao26 的大作中提到: 】
: 我现在的工作就维护10几年的老代码。原来的代码都是VC6.0,我接手后,把老代码升级VS2008(请忽略我们公司还在使用这么老的IDE)。
: - 来自 水木社区APP v3.4.2
--
FROM 221.220.229.*
还是vs2010吧,不是号称new vc6么
- 来自 水木社区APP v3.4.2
【 在 wangtao26 的大作中提到: 】
: 我现在的工作就维护10几年的老代码。原来的代码都是VC6.0,我接手后,把老代码升级VS2008(请忽略我们公司还在使用这么老的IDE)。
: - 来自 水木社区APP v3.4.2
--
FROM 111.197.21.*
格式,直接ide reformat吧
省事,还好git diff
- 来自 水木社区APP v3.4.2
【 在 toutouqi 的大作中提到: 】
: 成熟的c库改用c++编译(改少量代码),比如说类里的指针数组改vector,类成员初始化挪到变量定义位置,(输出参数)传引用改传指针,改掉memset、memcpy,一个类似检查字符串是不是绝对路径的小函数,要改成引用另一个工程的类似函数(如果被引用的函数不能完全满足要求,就再去改那个工程,导致工程间依赖很多),还有一些格式方面的,比如if后跟单个语句加不加花括号,和for在同一行的花括号改到下一行,等等。
--
FROM 111.197.21.*
啥ide?
【 在 PGP 的大作中提到: 】
: clang会提示,一般的点一下鼠标就修改好,自动修改好以后最多有些变量名需要微调
: 【 在 ericnoomam 的大作中提到: 】
: : 要是一个一个手改,那没什么看头了
: ....................
- 来自「最水木 for iPhone 11」
--
FROM 114.253.39.*
clion,不过调用的是clang所以其他ide应该也能做到
有个缺点是比如for循环改for range循环的时候会改成类似for (indice : indices),还不错,会自动把s去掉用indice做变量名但还没有智能到用正确的index
【 在 ericnoomam 的大作中提到: 】
: 啥ide?
: 【 在 PGP 的大作中提到: 】
: : clang会提示,一般的点一下鼠标就修改好,自动修改好以后最多有些变量名需要微调
: ....................
※ 修改:·PGP 于 Jun 13 07:09:55 2021 修改本文·[FROM: 39.183.10.*]
※ 来源:·最水木 客户端·[FROM: 39.183.10.*]
修改:PGP FROM 39.183.10.*
FROM 39.183.10.*
我觉得你高估自己了。
【 在 libgcc 的大作中提到: 】
: 编译器全部整明白估计还要一两年
: 然后发行版标配估计还要一两年
: 然后所有项目真的开始大范围用上来,估计还得再加七八年
:
: 这还不说大量的祖传代码根本没人敢碰的,前期基本都在炫技
: 到时候import加上#include双飞,thread与coroutine齐舞,怕是招
: ..................
发自「今日水木 on iPhone X」
--
FROM 223.167.168.*
vs2008没有stdint.h
遇到几个三方库相互交叉自定义各种int的时候就会很**了
【 在 toutouqi 的大作中提到: 】
: 挺好的,vc6的有些语法和标准c++不符合,一些代码在gcc编译时出错或者结果不对,vs2008应该挺好了,如果不追求新语法,并且编出的程序没操作系统兼容性问题,没必要继续升级。
--
FROM 171.83.8.*
这么算的话还是最新版好,微软宣称最新版的vc编译boost可以把各种针对vc的workaround去掉,和gcc及clang的兼容度前所未有的高
【 在 libgcc 的大作中提到: 】
: vs2008没有stdint.h
: 遇到几个三方库相互交叉自定义各种int的时候就会很**了
: 【 在 toutouqi 的大作中提到: 】
: ....................
--
FROM 39.183.10.*
这种行为非常自私
【 在 toutouqi (toutouqi) 的大作中提到: 】
: 公司有技术arch不停地把大量用了30年的老代码转为14和17的语法,下一步就是用20的语法,逻辑bug一个没修,真是闲得蛋疼。
--
FROM 114.85.233.*