在 C/C++ 中,const
关键字用于声明一个常量,即其值在初始化后无法更改。然而,尽管 const
变量的值不能更改,但是通过指针或引用,我们仍然可以改变指向的 const
变量的值。
以下是一个示例:
#include<iostream>
int main() {
const int a = 10;
int* p = const_cast<int*>(&a); // 使用 const_cast 移除 const 属性
*p = 20; // 改变 a 的值
std::cout << "a = " << a << std::endl; // 输出 20
return 0;
}
在这个示例中,我们使用 const_cast
来移除 const
变量 a
的 const
属性,然后通过指针 p
改变了 a
的值。需要注意的是,这种做法是不安全的,因为它破坏了 const
的保证,可能导致未定义的行为。因此,在实际编程中,应该避免这种做法。
领取专属 10元无门槛券
手把手带您无忧上云