gpt4 book ai didi

c++ - 传值时 "const"不是多余的吗?

转载 作者:IT老高 更新时间:2023-10-28 12:07:39 26 4
gpt4 key购买 nike

我在阅读我的 C++ 书籍 (Deitel) 时遇到了一个计算立方体体积的函数。代码如下:

double cube (const double side){
return side * side * side;
}

使用“const”限定符的解释是这样的:“const 限定符应该用于强制执行最小权限原则,告诉编译器函数不修改变量端”。

我的问题:这里使用“const”不是多余/不必要的,因为变量是按值传递的,所以函数无论如何都不能修改它?

最佳答案

const 限定符防止函数内部的代码修改参数本身。当函数大于普通大小时,这种保证可以帮助您快速阅读和理解函数。如果您知道 side 的值不会改变,那么您不必担心在阅读时跟踪它的值。在某些情况下,这甚至可以帮助编译器生成更好的代码。

考虑到这通常是一种很好的风格,有不少人这样做是理所当然的。

关于c++ - 传值时 "const"不是多余的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8714250/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com