Should I make everything that is not supposed to change const?(我应该做所有不应该改变常量的东西吗?)
本文介绍了我应该做所有不应该改变常量的东西吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我就是这么做的。即使使用值型函数参数和局部变量也是如此。看起来是个好主意。但是,我的团队领导称它为‘const spam’。他反对声明原始类型,如const
。即使他们本该如此。我只是在想,我应该如何努力让他相信const
是好的。
推荐答案
非常困难。他错了。C++一开始就应该使用const
默认值进行设计,大量应用const
没有什么不对的。这是一件好事(与您的团队领导不同)。
例如:
void foo()
{
const int x = some_function();
// ^ Now this can't be changed. Good.
// do stuff with `x`
}
类似:
void foo(const int x) // <-- x can't be changed. Good.
{
// do stuff with `x`
}
void bar()
{
foo(5);
}
您不要需要做的是通过const
引用接受内置类型的对象,因为这是没有意义的。
(当然,有时您希望能够更改某些对象的值。显然,在这些情况下,不要使用const
。)
这篇关于我应该做所有不应该改变常量的东西吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:我应该做所有不应该改变常量的东西吗?
猜你喜欢
- 将函数的返回值分配给引用 C++? 2022-01-01
- 如何提取 __VA_ARGS__? 2022-01-01
- GDB 不显示函数名 2022-01-01
- DoEvents 等效于 C++? 2021-01-01
- XML Schema 到 C++ 类 2022-01-01
- 从父 CMakeLists.txt 覆盖 CMake 中的默认选项(...)值 2021-01-01
- OpenGL 对象的 RAII 包装器 2021-01-01
- 使用 __stdcall & 调用 DLLVS2013 中的 GetProcAddress() 2021-01-01
- 将 hdc 内容复制到位图 2022-09-04
- 哪个更快:if (bool) 或 if(int)? 2022-01-01