c++ - 在c++中声明变量常量有什么意义

标签 c++ variables constants

<分区>

Possible Duplicate:
is const (c++) optional?

在 C++ 或任何编程语言中,声明变量 const 或常量有什么意义?我理解 const 的作用,但是声明所有非常量不是更安全吗,因为程序员不知道是否更改变量?我只是看不到 const 的目标。

最佳答案

如果程序员(或编程团队)能够成功地跟踪每个变量的每个细节并且不会意外地为常量赋值,那么无论如何不要声明常量 const

在语言中添加 const 有助于防止容易预防的错误,不像恐龙时代的语言那样会发生邪恶的事情。

这是我曾经不得不在一个巨大的 FORTRAN 77 应用程序中追踪的错误的近似值。除非采取特殊措施,否则 FORTRAN 77 通过引用传递参数:

subroutine increment(i)
integer i

i = i + 1
end

subroutine process ()
call increment (1)
call someprocedure (1, 2, 3)
...

结果是 someprocedure() 被调用了 (2, 2, 3)!

关于c++ - 在c++中声明变量常量有什么意义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6392415/

相关文章:

c++ - PortAudio:声音开始和结束时的短噪音

c++ - shared_ptr 对象的析构函数从未被调用

c++ - 使用 QRegExp 从 URL 中提取文件名

c# - 赋值不会使用 lambda 表达式修改 List ForEach 函数中的变量

我可以将 const char* 数组传递给 execv 吗?

python - 用 C 编写的 Python 模块中的常量整数属性

c++ - 用C++和MySQL实现登录系统

php - 变量前面的感叹号 - 需要说明

Javascript if 子句不起作用

ruby - ruby 中嵌套模块定义和 using::in 定义有什么区别?