我感觉老外肯定是看了函数实现,发现path并没有做++操作,所以说要加第二个const。
的确像你说得,一个是增加可读性,让函数外面知道path在内部没有做++操作,不会导致异常(比如外面是一个int [10]数组,传了第[9]到函数里,函数不会++指向非法得[10]),另一方面就是让维护的人修改函数实现的时候不要添加++操作,如果要++操作编译器会提示,从而让程序员认真考虑。
【 在 caihl 的大作中提到: 】
: 对于楼主的path来说,强制要求两个const不一定合理吧,reviewer不一定能确定函数里要不要用到path++吧,或者reviewer认为你要这么操作应该另外定义一个变量把path复制过去这么用?好像这么干没意义呀,反正函数内用了path++也不影响外面的调用者的path
: 在我看来这个多出来的const真正作用应该是假如真的不需要path指向其他地址,也就是不需要path++类似用法,这个const可以让这个函数的阅读者对这个path参数放心,中途从未指向过其他地址,在代码中间的任何地方用到时都知道这就是指向传来时的那个地址
--
FROM 120.245.128.*