- 主题:有个老外code review不让过
谁是committer?
--
FROM 112.97.56.*
【 在 ankyhe 的大作中提到: 】
: 首先,他的建议更加严格,加上之后,一看函数的声明就知道path的内容改不了,path 也不能指向其他地方。如果少一个const,path 可能指向其他地方。
: 其次,这些东西其实并不影响什么,因为如果这个代码足够短,一两眼就知道它会不会指向其他的地方;而且即使用了const,也有办法绕开编译器。
: 我现在对于这种东西,觉得真心意义不大。代码便于理解最重要。我觉得这些细枝末节的东西对于代码好不好读,作用很小。
然鹅,caller完全可以不用传参的path, 直接在函数内编造一个别的pbth不行么?怕调用者改是杞人忧天啊
--
FROM 123.112.67.*
有要求覆盖测试100%的么?
【 在 galaxy123 的大作中提到: 】
: 老外的提议能改善代码,防止将来有人改了输入参数引发另一个人的误解。大体思路是把运行期错误、逻辑误解挪到编译期,让编译器帮忙提前阻止潜在的bug。 他/她的提议是对项目的改善,哪怕微不足道的一点改善也是改善,不是把项目变差。
: 见贤思齐,其实你的阻止大可不必。没必要带着情绪对抗改善性建议,听他/她的,完善了代码就得了。
: 十几二十年前大家都不怎么写 unit test, 现在哪儿哪儿都是unit test, integration test。行业在进步,以前不加额外的const,可能是开疆拓土阶段太忙了顾不得这些细节了。现在补上也挺好。你应该感谢人家帮你拓展了思路。
: ...................
--
FROM 36.101.220.*
不错啊,探讨技术的话题上十大了,很难得
【 在 freyoneby 的大作中提到: 】
: 一定要函数参数加个const,比如conf(const char* path)改成conf(const char* const path),我说参数的值改不了,没必要加,他说能加const地方都要加,想问一下参数要么进栈要么进寄存器,const是怎么作用到寄存器上的?
--
FROM 111.194.216.*
赞!
【 在 fanci 的大作中提到: 】
: 那你们的所有参数不得是 const int, const double
--
FROM 114.249.58.*
这个不错。能避免指针对象的无意修改
【 在 jdk140 的大作中提到: 】
: 给指针自己加const能避免*counter++这种低级错误,还是有用的。
: --
: FROM 58.44.45.*
--来自微微水木3.5.14
--
FROM 117.143.148.*
为了防止自己随地便溺,
塞上肛塞再穿个带锁的铁裤衩?
【 在 chris73 的大作中提到: 】
: 这个不错。能避免指针对象的无意修改
: --来自微微水木3.5.14
--
FROM 112.97.60.*
说这话真恶心,好好的讨论技术问题不行吗
【 在 flw 的大作中提到: 】
: 为了防止自己随地便溺,
: 塞上肛塞再穿个带锁的铁裤衩?
:
: ...................
--来自微微水木3.5.14
--
FROM 117.143.148.*
我们现在维护的代码就是这种风格。能加const的都加。除了入参,函数里定义的局部变量,只要没改过或不需要改,全都加const。
原始代码是老外写的。现在代码里基本一堆const。
除了const多,C++各种高级特性用得也多。函数基本很短小,lamda表达式,algorithm标准库函数到处可见。
后来隐约感觉到这种风格可能和函数式编程有共通之处,也就是尽量少定义变量,减少变量引起的副作用。
--
FROM 112.2.230.*
这个老外有点不懂装懂
【 在 freyoneby 的大作中提到: 】
: 一定要函数参数加个const,比如conf(const char* path)改成conf(const char* const path),我说参数的值改不了,没必要加,他说能加const地方都要加,想问一下参数要么进栈要么进寄存器,const是怎么作用到寄存器上的?
:
: - 来自 水木社区APP v3.5.7
: ...................
--
FROM 39.144.104.*