问题标签 [scoping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
300 浏览

c++ - 头文件中的类声明应该包含哪些内容?

C++ 中的类声明应该包含什么内容?

例如,我在头文件中有以下内容:

此类的 cpp 文件定义了许多附加的小型实用程序函数、类型和枚举。所有这些也应该在类声明的私有部分中定义吗?

0 投票
4 回答
3250 浏览

r - R 2.11.1 中的范围和功能:出了什么问题?

这个问题来自一系列其他问题,这些问题基本上都处理相同的问题。出于某种奇怪的原因,在另一个函数中使用一个函数有时会失败,因为在第一个函数的本地环境中定义的变量在第二个函数中找不到。

伪代码中的经典模式:

eval(expr,envir,enclos)中的错误:找不到对象'y'

首先,我认为它与 S4 方法和其中的范围有关,但它也与其他函数有关。我与 R 开发团队进行了一些互动,但他们所做的只是将我引导到错误报告网站(我不得不说,这不是最吸引人的网站)。我从来没有得到任何反馈。

随着问题不断出现,我想知道是否有逻辑解释。在所有这些情况下,这是一个常见的错误吗?如果是,是哪一个?或者它真的是一个错误?

其中一些问题:

PS:我知道 R-devel 列表,以防你想知道......

0 投票
4 回答
198 浏览

c# - 如何使在一种方法中创建的类的实例可用于另一种对等方法?

有什么方法可以根据用户想要创建的数量来创建多个类对象?我能够做到这一点,但是该实例仅在创建它的方法下可用

现在我将无法在另一种方法中使用它,例如

0 投票
2 回答
1785 浏览

r - 在函数中使用 sfApply 时的范围问题(包降雪 - R)

让我在 R 中添加另一个范围问题,这次是降雪包。如果我在全局环境中定义了一个函数,并且稍后在另一个函数内的 sfApply() 中尝试使用该函数,则不再找到我的第一个函数:

这给出了:

但是,如果我将我的函数嵌套在另一个函数中,它就可以工作。当我在全局环境中使用 sfApply() 时,它也可以工作。问题是,我不想将我的函数 func1 嵌套在该函数 2 中,因为这会导致 func1 被多次定义(func2 用于类似循环的结构中)。

我已经尝试简化代码以摆脱双循环,但由于问题的性质,这是完全不可能的。有任何想法吗?

0 投票
3 回答
173 浏览

c++ - c++ 范围怪异 - 为什么成员函数的内部类型参数不需要范围?

假设我们给这个类一个内部结构。

对我来说,“Process”中的返回类型 (Some::Crap) 是有范围的。

对我来说,“流程”主体内不需要范围界定是有道理的。

我不明白为什么 Process (Crap& crap) 的内部结构参数不需要范围。

有人对此有任何见解吗?谢谢

0 投票
5 回答
762 浏览

c++ - C++ 中的范围案例语句:跨范围案例标签的目的?

我当前的代码中有一个错误,几天来我一直在努力解决这个问题。我将在下面发布代码的摘要版本(不是我的实际代码,但它仍然可以编译)。

我有时喜欢在我的 switch case 中引入更严格的范围,这样局部变量名就不会干扰我之前使用的变量名。显然,有一天我有一个电话要接听或其他什么,并没有按照我的意愿完成案例陈述,但后来我确定我已经完成了。case 2 实际上应该在嵌套开关中,而不是作为原始外部开关的一部分(对于那些想知道的人,我在代码中使用命名常量,而不仅仅是幻数)。在 g++ 上,在没有任何选项的情况下编译时我没有收到警告或错误。

我的问题:为什么允许跨范围的情况下从开关跳转?它的用途是什么?

0 投票
2 回答
104 浏览

iphone - 关于传递实例变量的非常基本的 Obj-C 问题

嗨,对于这样一个愚蠢的问题,我很抱歉,我正在根据分段控件的索引更改变量值,但随后想在随后的计算中使用该变量;确定这与变量范围有关吗?

}

非常感谢帮助!

0 投票
4 回答
2295 浏览

javascript - Javascript 工厂模式变量作用域

我正在关注一个教程,该教程显示了在 javascript 中创建对象的工厂模式。下面的代码让我很难理解它为什么起作用。

第一个注释行对我来说似乎很合适(使用thisshowLabel 函数中的关键字)。我不确定在它的位置使用 obj 是如何工作的。obj 必须在某处引用全局变量,因为在该函数运行时没有定义 obj,对吗?因为我制作了 2 个对象,所以在这种情况下,两者都能正常显示,这不仅仅是运气,obj 内容的旧值也被正确存储和引用。但如何?如果我取消注释第二条评论,那么它就会中断,我明白为什么,现在我明确告诉 js,我正在谈论一个局部变量并且没有。

0 投票
3 回答
16705 浏览

r - 在 foreach 循环中找不到函数

我正在尝试使用 foreach 在 R 中进行多核计算。

A然后我在控制台中调用函数。问题是我正在调用一个函数,该函数PosdefB我来源的另一个脚本文件中定义。我不得不将:Posdef的导出参数列表放入。但是我收到以下错误:foreach.export=c("Posdef")

为什么 R 找不到这个定义的函数?

0 投票
6 回答
13308 浏览

java - Java 范围规则和内部类

所有疯狂的 Java 作用域规则都让我头晕目眩,而public static void废话也无济于事。到目前为止,我使用的所有编程语言要么使用词法作用域,要么使用它的一些近似值,而没有任何访问修饰符,即内部东西捕获外部东西,只要内部东西存在,就可以访问外部东西。

那么如何理解 Java 中内部类的作用域规则呢?他们是否可以访问在外部类中声明的变量,或者是否有一些奇怪的边缘情况我必须担心,因为所有公共静态私有的东西都在浮动?