- 主题:掐指一算,本青可以不用学c++20了
这里哪些是14/17的语法?
我看是把c with class 改成c++98了。
一个计算机专业毕业生带一堆物理、数学、建筑、土木、机械的老鸟吧。
【 在 toutouqi 的大作中提到: 】
: 成熟的c库改用c++编译(改少量代码),比如说类里的指针数组改vector,类成员初始化挪到变量定义位置,(输出参数)传 ...
--
FROM 1.80.243.*
1 define vs const,是Effective cpp第二款的建议。主要是字符串替换与符号定义的区别。define没有任何优势。2000年以前的建议。 inline const只是个语法层的更新。
2 随机数是个专门的话题,我不懂。但你们要有自研算法,贸然换标准库不妥。
3 变量声明处给默认值,可以预防新增构造函数,不写初始化列表吧!语义上,或者设计表达上,这和默认值是场景无关的。构造函数的初始化列表,以及反序列化接口,每个都对应不同的使用场景,不同的默认值。
你的发言啊,我感觉主要还是情绪上的对抗。大多语法改动都是表层的问题,主要是为了传达设计意图、业务意图。如果只会把for改range based for,那是形式大于内容。
【 在 toutouqi 的大作中提到: 】
: 这方面有:把define的常量改成inline const,让把用了多年的随机数生成改成新标准里的random ...
--
FROM 1.80.243.*
自定义多维数组,是全公司/统一的类,还是每个人来一个? 升级这个类就可以吧。
opecv里,CvMat就升级过,以前叫什么ImgArray,很不好用。
没有宽高、要记得释放。有了Mat以后,基本就没人用Array了。最多的是非计算机专业的在CSDN上,查了点二脚猫老代码,要把Mat转回去。
另外调研下,你们代码库,所有接口,const的多,还是非const的多?
【 在 toutouqi 的大作中提到: 】
: 智能指针有人用的,只是老代码,结构简单的类改成用智能指针有时候显得并不智能,比如自定义的多维数组,比如简单字符串的par ...
--
FROM 1.80.243.*
“比如做卷积运算的类里的buffer,智能指针替换普通指针有啥好处呢”——没有明显bug和明显没有bug的区别。
如果这个buffer不被暴露出去,一般没问题。 改智能指针,unique会防止无意的copy ctor和copy assign。
【 在 toutouqi 的大作中提到: 】
: 你说得对,很多改动只是语法层面,对业务逻辑没有一毛钱帮助,比如做卷积运算的类里的buffer,智能指针替换普通指针有啥好 ...
--
FROM 36.45.40.*
不统一就太蛋疼了。统一的Mat类多好。
接口的变量?没懂。我说的是,所有的类的成员方法,后面有const修饰吗?如果有,说明你们已经做得不错,战胜了非const派。代表当时进步的新力量。如果没有,说明你们就是完成业务为主的工程软件,软件工程本身考虑的比较少。你们这arch做得是基本工作。而且很可能是行业外的,业务敏感性一般,主要考虑软件工程本身的问题。
版本控制、分支管理、提交log、注释规范、build系统后面都会动。一般这种人都是一套的。
【 在 toutouqi 的大作中提到: 】
: 用途不同,不是统一的,比如有按列格式的,也有类似c的二维数组按行排列的。如果你说的是接口的变量,const多非const ...
--
FROM 1.80.243.*