scope 相关问题

范围是一个封闭的上下文,其中值和表达式相关联。使用此标记可以了解不同类型范围的问题以及范围可能不清楚的问题。

匿名函数/过程的范围/上下文

对于我们这些并不真正理解事物在后台工作的方式并暂时认为我们理解的人来说,这是一个新手问题。然后,当

回答 1 投票 0

什么是“this-escape”警告,我该如何处理它?

这方面的资源少得惊人,但是,当我在最新的 Java (21) 上编译代码时,我的很多类都遇到了这个错误。

回答 1 投票 0

在array_filter中使用外部变量

我有一个数组,我想通过外部变量对其进行过滤。 情况如下: $id = '1'; var_dump($id); $foo = array_filter($bar, 函数($obj){ if (isset($obj->foo)) { ...

回答 3 投票 0

在groovy中的对象集合中查找具有属性值的对象

我有一个 ProjectComponent 类型的集合,我使用以下代码在我的集合中查找具有特定名称的对象。这是代码: if(newIssueproject.getComponents().stream().

回答 1 投票 0

为什么在 lambda 中隐式捕获 const int(或 Shorts)? [重复]

编译如下: int main() { 常量 int x = 123; 自动 g = []() { std::cout << x << "\n"; }; g(); } But this: int main(){ const float x = 123; auto g = []() { std::c...

回答 2 投票 0

使用 goto 跳转到内部或同级作用域

是否允许跳转到内部作用域或兄弟作用域内的标签?如果是这样,是否允许使用在该范围内声明的变量? 考虑这段代码: int 条件(无效); 无效使用(int); 维...

回答 2 投票 0

coroutineScope 不等待子协程?

我尝试学习 Kotlin 中的协程,现在我在 Kotlin Playground 中使用的一些代码遇到了问题。 我有两个挂起功能。一个延迟3秒。我将调用这两个函数...

回答 1 投票 0

Box2d 主体,保存 b2BodyDef、b2Shape 和 b2FixtureDef

要创建并初始化 b2Body,我们需要创建 b2BodyDef、b2Shape 和 b2FixtureDef,并将这些值作为函数指针传递。 所以我可以有一个像这样的 createBody 函数: b2...

回答 1 投票 0

我想了解以下Javascript代码以了解JS如何确定下面代码中的this值[重复]

修订后的问题:我在网上看到了这个代码示例,当我执行它时,控制台上没有记录任何内容。我希望它会记录“用户名”,但它没有。我想知道为什么...

回答 2 投票 0

React Native const 值更改

在我的 React-Native 应用程序中;我在一个名为constants.js的组件中声明了一个const变量,如下所示 导出常量 IS_VIA_DEEP_LINK = false 现在, 在我的 Splashscreen.js 中,我正在执行以下操作: 康斯塔...

回答 2 投票 0

Python 整型变量作用域与设置作用域

在下面的代码中,如果我在 for 循环中将 current 定义为整数,那么在 dfs 函数调用过程中 current += 1 将出错,并显示“UnboundLocalError: local variable 'current_island'

回答 1 投票 0

Dagger2 自定义作用域:在模块中使用提供程序方法时,@Inject 构造函数注入中看不到自定义作用域吗?

以下是代码 自定义注释类: @预选赛 @Retention(AnnotationRetention.RUNTIME) 注释类 CtxMain @范围 @Retention(AnnotationRetention.RUNTIME) 注释类MyS...

回答 1 投票 0

临时对象什么时候销毁?

以下代码打印一、二、三。所有 C++ 编译器都希望如此吗? #包括 结构体Foo { const char* m_name; ~Foo() { std::cout << m_name <...

回答 5 投票 0

为什么临时对象会在块作用域结束之前被销毁?

以下代码打印一、二、三。所有 C++ 编译器都希望如此吗? #包括 结构体Foo { const char* m_name; ~Foo() { std::cout << m_name <...

回答 5 投票 0

js 使用嵌套的未命名函数调用函数并从中获取值

函数 myFunction(a,回调){} myFunction(a, 函数(测试){c = '结果';}); console.log('值c'+c); 关于如何进入第三行以获得值 с 有什么想法吗? 我尝试使用: var c =

回答 1 投票 0

C++ 中的局部/静态变量作用域

如果我写这样的东西: #包括 int main() { 使用命名空间 std; {int n;n=5;} cout< 如果我写这样的东西: #include <iostream> int main() { using namespace std; {int n;n=5;} cout<<n; system("pause"); return 0; } 编译器告诉我 n 未声明。然后我尝试将其设为静态,但编译器再次告诉我它未声明。声明为 static 的变量没有程序作用域吗?如果没有,我该如何在这个程序中使用 n ? 您混淆了范围和生命周期。静态变量的生命周期与程序的生命周期相同,但它们仍然遵循基于声明位置的作用域规则。 n的范围就在括号之间: {int n;n=5;} 所以在块之外,你没有 n 变量。 将其设为静态只会使其值在退出块后保留,以便下次再次进入该块时,您可以检索上次执行该块时的值,但它的范围仍然在括号内。 在全局作用域中声明为静态的变量,其作用域仅限于翻译单元。在函数内声明为静态的变量的生命周期设置为与程序的生命周期相同,但在这种情况下不会影响其作用域。您必须将 cout 置于与声明 n 相同的范围内才能使用它。 这里编译器给出错误 n is undeclared 因为这里“{int n;n=5;}”它是在大括号中声明的。大括号告诉我们变量的范围。 作用域结束时,变量将从内存中删除。 对于静态和本地。 静态:该变量与全局变量相同,但其值在整个应用程序中保持不变。并且静态变量不能在其他页面使用extern使用。 Local:局部变量存储在堆栈中,当它们超出范围时被删除。 如何在这个程序中使用n? using namespace std; int main() { int n; // declare n as int n=5; // assign it a value cout << n; // display it. system("pause"); return 0; } 请不要混淆静态变量的范围和生命周期。范围意味着您可以在哪里访问变量。变量的生命周期是指变量在内存中停留的时间。就你而言, x 变量的范围在花括号内。 x 的生命周期将是程序范围。 在可访问性方面考虑以下全局静态范围的示例 #include <iostream> using namespace std; static int y; class A { public: void increment() { ++y; } }; class B { public: void increment() { ++y; } }; int main() { A a; a.increment(); cout << y << endl; A b; b.increment(); cout << y << endl; B c; c.increment(); cout << y; return 0; } 输出 1 2 3 这里全局静态变量访问是在 A 类和 B 类中进行的。 在可访问性方面考虑以下类静态范围的示例 #include <iostream> using namespace std; class A { public: static int y; void increment() { ++y; } }; class B { public: static int x; void increment() { ++x; } }; int A::y = 1; int B::x = 1; int main() { A a; a.increment(); cout << a.y << endl; A b; b.increment(); cout << b.y << endl; B c; c.increment(); cout << c.x; return 0; } 输出 2 3 2 这里静态变量 y 范围是 A 类,x 范围是 B 类。 如果您尝试使用 B 类对象访问静态变量 y,那么它将返回错误。 (B b -> b.y) 静态变量 x 和 y 的生命周期都保持到 main 结束。

回答 7 投票 0

如何将 MongoDB 对象推送到全局数组而不覆盖它?

我遇到了范围界定问题。首先,我正在搜索当前用户,一旦找到他或她的对象,我就访问他们的朋友数组。在该朋友数组中,每个朋友的用户名都是...

回答 1 投票 0

如何将代码与主表单类分离?

我对 C# 还很陌生,但有一个项目正在进行中,并且遇到了一些麻烦。 我正在尝试遵循(我已知的)最佳实践,并希望尽早掌握这一点。 下面是一个v...

回答 1 投票 0

arr.filter是否调用callbackFn两次?

第一次提问。 我从下面的页面中看到了这段代码: 函数 inBetween(a, b) { 返回函数(x){ 返回 x >= a && x <= b; }; } let arr = [1, 2, 3, 4, 5, 6, 7]; ...

回答 1 投票 0

Python 是否重新定义了函数内变量作用域的猜测?

我有一个让我困惑的简单例子,涉及函数中的局部和全局作用域。 a=1 def 函数(): print(a) # 错误:赋值前引用了局部变量 'a' a=2 公关...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.