问题标签 [forward-reference]

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 回答
321 浏览

java - OpenCV for Android:非法转发参考

我正在OpenCV为我的项目使用,一切正常,除了DescriptorExtractor.java. 它每天都给我以下错误:

该文件最初如下所示:

每天我都将 declerationOPPONENTEXTRACTOR移到班级的顶部,问题就消失了。但是第二天课程又恢复到原来的样子。在类的顶部有一个评论

我应该怎么办?我该如何防止这种情况?

更新:

我正在为 Android 3.0 和 Java 7.80 使用 OpenCV

0 投票
1 回答
128 浏览

scala - Scala:类型模式匹配期间的前向引用错误

我希望了解以下 Scala 代码生成的编译时错误:

determineType在within的版本中MyClass,thecase class CIn和正则class DIn都在 after 之后定义和声明determineType。尝试匹配DIn没有说明符变量的 a 时会生成符号解析错误。

在脚本范围内,我们同样定义了 acase class Cout和一个正则class DOut。在脚本范围版本中,determineType我们有两个不同的错误。第一个是在引用没有说明符的case class类型 ( Cout) 时生成的,它显示为“错误的前向引用”。第二个是在引用不带说明符的常规class类型 ( DOut) 时生成的,它是符号解析错误。

我是该语言的新手,因此不确定为什么在case语句中包含说明符会影响处理前向引用的方式。

0 投票
1 回答
1585 浏览

scala - Scala错误:当代码出现在函数中时“前向引用扩展了值的定义”

我正在尝试使用 Scala 2.11.7 编译以下代码。

fibo基于ScalaStream文档中的 Fibonacci 序列示例,并且可以正常工作。

然而,firstKind试图用参数pq(使卢卡斯序列成为第一类)泛化序列的函数有以下错误:

基本上是一样的代码,那为什么它在函数外工作,而在函数内却不行呢?


这个错误信息让我之前的许多程序员感到困惑。我考虑过……</p>

我可能会继续阅读几个小时,但我认为此时最好寻求帮助。我正在寻找解决方案和解释。(我熟悉函数式编程,但对 Scala 不熟悉,所以如果解释涉及“综合”和“隐式”等术语,那么我可能还需要对此进行额外解释。)

0 投票
0 回答
405 浏览

assembly - 2 遍汇编器能否解析嵌套前向引用

我知道如果一个符号被前向引用,两遍汇编器可以解决它。但是如果有一个符号的嵌套定义,例如

D EQU A+C

C EQU B+A

B EQU A

一个字 10

这可以通过 2 遍汇编程序解决吗?

0 投票
1 回答
5097 浏览

recursion - Angular2递归组件

我正在尝试部署这些帖子和 plnkr 中讨论的递归组件:

如何将父组件注入子组件?

javascript中的Angular2递归模板

但是,提供的解决方案只处理组件对象本身,并没有解决组件应该实例化的 HTML 标记的问题。

子组件如何<parent> ... </parent>在其模板中使用 html 标签?

我将非常感谢您的帮助,也许您可​​以提供一个 plunkr/fiddle。

0 投票
1 回答
57 浏览

c - C 前向引用结构 - 1) 必须带有指针?2)必须初始化?

我正在尝试在 C 中转发引用(嵌套)结构。

这意味着我有一个结构,其中我引用了稍后声明的另一个结构。

如果我将嵌套结构声明为指针,并用值初始化它,它就可以工作。

以下代码有效:

如果我在父(?)结构之前声明嵌套结构(即struct cpu_speed{...};),我不需要使用指针,也不需要初始化。

意义:

(1) 我可以使用struct cpu_speed speed;而不是struct cpu_speed *sp;. (2) 我不需要为结构变量赋予初始化值。

我的问题再次 - 在前向引用结构中 - (1) 你必须用指针声明它吗?(2) 你必须初始化这些值吗?

0 投票
1 回答
671 浏览

typescript - 使用 angular2 组件(没有 forwardRef)实现递归结构?

我有一个由两个组件组成的递归结构:

  • OptionsMenuComponent(一个菜单)
  • MenuItemComponent(菜单项)

OptionsMenuComponent:( 模板+组件)

菜单项:(模板+组件)

注意:我删除了几乎所有的逻辑和设计以简化,因为它不相关

如您所见, OptionsMenuComponent 知道 MenuItemComponent ,反之亦然。
此外,您可能已经注意到,在 MenuItemComponent 中,我在指令中使用了 forwardRef。没有它,当我加载页面时,我会收到以下错误:

错误:未捕获(承诺中):组件“MenuItemComponent”视图上的意外指令值“未定义”

目前它的编写方式(使用 forwardRef)效果很好,但 TSLint 对此不满意并输出以下内容:

[gulp-tslint] 错误 (no-forward-ref) menu-item.component.ts[9, 18]:避免在“MenuItemComponent”类中使用 forwardRef

我在网上四处寻找替代解决方案,但空手而归。我能找到的只有两个建议:

  • 我使用 forwardRef 的解决方案
  • “你有一个循环引用,你做错了什么,所以将它们解耦”(不是确切的词)

第一个建议有效,但我的问题是是否可以避免这种情况,因为这听起来不像是好的做法(而且人们到处都说要避免它)

对于大多数情况,第二个建议是正确且易于实现的,但是我如何在递归结构中做到这一点(使用 angular2 组件)?

提前谢谢,

ps - 在此之前,我在一个组件中拥有所有功能,并且我对引用自身的单个组件没有任何问题(不需要 forwardRef)所以请不要推荐这样做,因为这里不是这种情况(试图保持组件小而简单)

TL;DR:
两个组件相互引用(需要递归结构)。不使用 forwardRef 我得到错误,是否有不涉及使用 forwardRef 的替代解决方案?

0 投票
1 回答
232 浏览

scala - Scala forward referencing

I'm new to Scala. I'm making a game and I have a list of locations that a character can visit, of type Location. I have a case class and a companion object to achieve this.

LinkedLocations inside Location is an array of type Location and can have any number of locations that a location can lead to. In this case, Room 1 leads to Room 2, and vice versa.

I've tried making them lazy vals but end up with a stack overflow. How do I fix forward referencing problems like this? Would there be a better way to design this?

0 投票
1 回答
1427 浏览

java - Java - 枚举 - 逻辑循环引用

想象以下组成的示例:

Illegal forward reference前向引用会出错SCISSORS


有没有办法在 Java 中处理这种前向引用?

或者你将如何模拟这种情况,在几个枚举值之间有一个逻辑循环引用?

0 投票
3 回答
432 浏览

python - Python中对象之间的相互递归

我目前正在开发一个模块,该模块允许用户通过创建任务对象的实例(我的模块提供一个任务类)来构建任意任务网络模型(用于离散事件模拟)。除其他外,任务包含描述其完成效果的逻辑,例如不同任务的启动。这样,任务类的一个实例可以引用一个或多个其他实例,具有循环引用/相互递归的可能性。

这是我的代码的一个极其简化的版本:

任务模块.py

任务测试.py

这个实现的问题是我在定义 task2 和 task3 之前就引用了它们。如果我可以排除循环引用,那将不会是世界末日——这只是重新安排对象实例化顺序的问题——但我相信我应该适应这种可能性。我已经考虑了几个潜在的解决方法——大多数会涉及要求用户间接引用任务(即通过一些唯一的标识符值)——但我想知道是否有一个更优雅的解决方案,它涉及一种巧妙的抽象形式。

确保实例化任务/生成任务网络的过程(如 TaskTest.py 中所示)尽可能简单易行是该项目的首要任务,因为这是我模块的用户将花费的大部分时间时间做。

我尝试搜索,但似乎大多数关于相互递归/循环引用主题的问题都涉及函数或类而不是实例。