我可以在C++中取消声明变量吗?
Can I undeclare a variable in C++?
说,由于某种原因,我不再需要变量:我可以"取消声明"它吗?
例如:delete 运算符解除分配专用于指针的内存,我也可以"删除"指针本身吗?
你不能取消声明一个变量,就像你不能成为未出生的人一样。但是您可以使用范围来限制它的存在:
{
int a = 42;
}
// a doesn't exist here
不,您不能"取消声明"变量。当它超出范围时,它是"未声明的"。
请注意,变量声明仅在编译期间相关。一旦程序被编译,变量就不再被"声明"或"未声明"。对象实例在运行时创建,但变量在编译时声明。
您可以在本地隐藏其值:
int a = 10;
void some_function()
{
int a = 100;
// a is 100 here
}
相关文章:
- 在将变量声明为引用时,堆在释放后使用
- 静态变量声明和定义
- 在变量声明中使用 for 循环
- 向量索引变量声明(size_t 或 std::vector<DATATYPE>::size_type)
- C++ 类型类的变量声明不命名类型?
- 将本地 OpenCV Mat 变量声明为静态以防止重新分配
- std::enable_if 更改成员 *变量* 声明/类型
- 在C++中,变量声明左侧的大括号是什么意思?
- 将变量声明为全局变量,然后声明为局部变量 -Shadowing-
- 命名空间内C++变量声明
- 将静态全局变量声明为内联有什么意义吗?
- 如何将一个变量声明为另一个变量的值
- 如何将迭代器变量声明为私有成员变量
- 没有变量声明为函数,但错误:二进制表达式的操作数无效
- 有没有人有书面证据来保证函数中参数的定义方式与普通变量声明相同?
- ClangTool 如何获取变量声明中模板参数的位置?
- 标准与显式自动推导变量声明
- C 静态变量声明怪异链接器错误
- 如何为数组成员变量声明 getter/setter
- 可视C++变量声明