c++ - C++ 中的临时对象确实是 const 吗?

标签 c++ constants temporary

我一直认为 C++ 中的临时对象会被编译器自动视为 const。但是最近我遇到了以下代码示例:

function_returning_object().some_non_const_method();

对 C++ 编译器有效。这让我想知道——C++ 中的临时对象确实是 const 吗?如果是,那么为什么上面的代码被编译器认为是正确的?

最佳答案

不,他们不是。除非您将返回类型声明为 const。

关于c++ - C++ 中的临时对象确实是 const 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4701558/

相关文章:

java - 对原始类型使用常量或枚举

c++ - 类名函数名(const 类名&对象名) 是什么意思?

c++ - 如果方法中的变量是临时的。那么为什么我们可以访问它们 C++ 呢?

c++ - 如何创建比我的教科书提供的更容易的线性搜索算法

c++ - 为什么 C++ WinInet 函数无法解析外部符号?

c++ - 函数调用优先级的重载和模板特化

c++ - 提升线程错误

python - 为什么 Micropython 'const' 不接受浮点值?

sql-server - 临时表 - 允许的最大行值数为 1000

java - 如何在服务器上存储临时数据并共享给许多用户