1160得票21回答
一个本地变量的内存是否可以在其作用域外被访问?

我有以下的代码。#include <iostream> int * foo() { int a = 5; return &a; } int main() { int* p = foo(); std::cout << *p; ...

406得票7回答
在if语句中初始化的变量作用域是什么?

这可能是一个简单的作用域问题。下面的代码在Python文件(模块)中让我有点困惑:if __name__ == '__main__': x = 1 print x 在我工作过的其他编程语言中,这段代码会抛出异常,因为 x 变量只在 if 语句中存在,不应该在外部存在。但是这段...

293得票14回答
尝试使用一个(本应为全局的)变量,但它在第一次使用后被重新赋值,导致出现UnboundLocalError错误。

当我尝试这段代码时:a, b, c = (1, 2, 3) def test(): print(a) print(b) print(c) c += 1 test() 我在print(c)这行代码中收到了一个错误,错误信息如下:UnboundLocalError...

144得票4回答
为什么局部变量需要初始化而字段不需要?

如果我在类中创建一个bool变量,比如bool check,它的默认值是false。 但是当我在方法中创建相同的bool变量,用bool check(而不是在类内部创建),就会出现错误"使用了未赋值的本地变量check"。为什么会这样呢?

106得票2回答
如何从Delphi程序或编译器生成的调试信息中提取本地变量信息(地址和类型)?

我的目标是: 给定一个在 Delphi 编译的 32 位或 64 位 Windows 程序中的挂起线程,遍历堆栈(可行) 给定堆栈条目,枚举每个方法中的本地变量及其值。至少要找到它们的地址和类型(integer32/64/signed/unsigned、string、float、recor...

101得票9回答
C中字符串字面值的“寿命”

以下函数返回的指针不会变得无法访问吗?char *foo(int rc) { switch (rc) { case 1: return("one"); case 2: return("two"...

94得票11回答
Java中的默认值和初始化

根据我的参考资料,原始类型具有默认值,而对象为null。我测试了一段代码。public class Main { public static void main(String[] args) { int a; System.out.println(a);...

86得票2回答
在 ArrayBlockingQueue 中,为什么要将 final 成员变量复制到本地 final 变量中?

ArrayBlockingQueue 中的所有需要锁定的方法在调用 lock() 之前,都会将锁复制到一个本地的 final 变量中。public boolean offer(E e) { if (e == null) throw new NullPointerException();...

82得票6回答
C++本地变量销毁顺序

在C++(11)中,局部变量的销毁顺序是否被定义?更简洁地说,在同一范围内两个局部变量的析构函数的副作用将按照何种顺序变得可见? 例如:struct X{ ~X(){/*do something*/} } int main(){ X x1; X x2; return ...

79得票6回答
不使用 "global" 关键字,在函数外部访问函数变量的方法

我正试图在Python函数外访问本地函数变量。 我可以通过全局变量使代码像这样工作: 我正在尝试在 Python 函数之外访问函数内的本地变量。 我可以通过使用全局变量来让以下代码运行:bye = '' def hi(): global bye bye = 5 si...