问题标签 [redeclaration]

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

c++ - 在未包含原始声明的命名空间中重新声明

命名空间成员可以在包含声明命名空间的命名空间中定义:

命名命名空间的成员也可以通过显式限定(3.4.3.2)被定义的名称在该命名空间之外定义,前提是正在定义的实体已经在命名空间中声明并且定义出现在命名空间中的声明点之后包含声明的命名空间

类可以在包含声明命名空间的命名空间中定义:

如果一个类头名称包含一个嵌套名称说明符,则该类说明符应引用先前直接在嵌套名称说明符所指的类或命名空间中声明的类,或者在该命名空间的内联命名空间集(7.3.1)(即,不仅仅是由 using 声明继承或引入),并且类说明符应出现在包含先前声明的命名空间中。在这种情况下,定义的 class-head-name 的 nested-name-specifier 不应以 decltype-specifier 开头。

我们对成员函数定义和静态数据成员定义也有相同的规则。

所以我的问题是在不包含原始声明的命名空间中重新声明(而不是定义)是否合法?

0 投票
2 回答
191 浏览

c++ - C ++混淆for循环中重新声明变量的范围

以下 while 循环不会终止。x这是因为在 while 循环中重新声明了变量。但我不明白为什么在第二次迭代中,语句x<10y=x考虑在外部范围中定义的 x 而不是x在以下语句中的块范围中定义的。这是因为一旦第一次迭代结束,x块范围内的定义就被破坏了,循环开始重新执行?

0 投票
1 回答
144 浏览

c - 在不包含保护的情况下避免重新声明错误

如果我想在不使用包含保护的情况下避免重新声明错误,那么依赖树必须是这样的基本规则:仅一棵或多棵树。

任何时候可以通过两种不同的方式联系到父母,就会发生违规行为?

例如:

declarations.h 包括 string.h
data.h 包括 declarations.h
data.c 包括 data.h
ui.c 包括 data.h 和 string.h

这会产生一个重新声明错误,因为 ui.c 和包含 string.h 有两种不同的方式:直接和通过 data.h。因此,该结构不是树,因为 ui.c 有多个路径到同一个父级。

有没有办法让多个路径到同一个父级并且不会出现重新声明错误?

0 投票
1 回答
94 浏览

swift - Paintcode 中“StyleKitSettableImage”的无效重新声明

我有两个 Paintcode Stylekit 快速类将两个不同的图像写入两个不同的视图。第一个效果很好,但是当我导入第二个时,这两个功能

有一个红色警告,无效的重新声明StyleKitSettableImageand StyleKitSettableSelectedImage。我知道无效的重新声明意味着有两个同名的函数,但是这些函数在两个不同的类中。所以问题是:如果我必须在 Xcode 中导入更多的 StyleKit 类,我该如何解决这个错误?

编辑:也许我必须只有一个样式工具包文件,所有绘图方法?

0 投票
1 回答
449 浏览

c - c中的全局变量声明

当我编译这段代码时,一切正常,但是当我在主函数中给出这个时,

我收到一个错误,例如

为什么会这样?

0 投票
2 回答
500 浏览

ios - 需要两次调用相同的函数,但出现“无效重新声明”错误

所以这是我需要编写的代码,唯一的区别是它们影响两个不同的文本字段。我了解我需要更改发件人以避免重新声明错误,但不确定将其更改为什么。

0 投票
2 回答
130 浏览

javascript - 在 Javascript 中重新声明变量

我今天(通过艰难的方式)发现 JavaScript 允许这样做,而不会产生任何错误:

i我偶然为两个循环使用了相同的标识符。

JavaScript 编译器/解释器不会产生错误(如 Java),也不会创建一个不同的变量来隐藏外部循环上的变量(如 C++)。它们引用同一个变量,所以外循环只会运行一次!

为什么会这样?这种行为在任何情况下都有用吗?

0 投票
1 回答
61 浏览

c - C:当所有类型都相同时,用不同的类型重新声明

我有一个包含此函数声明的头文件:

我有一个 ac 文件,我在其中实现了这个功能(从 h 文件中的声明中复制粘贴原型)

然而,使用不同类型重新声明时出现错误:

在此处输入图像描述

任何想法可能是什么问题?

0 投票
1 回答
616 浏览

typescript - 忽略打字稿中解构的多个结果

我正在使用打字稿解构如下:

但这违反了noUnusedLocals编译器选项,所以我真正想要的是:

但这违反了对块范围变量(两个名为 的变量_)的重新声明。

处理这个问题的最佳方法是什么?也许解构在这里只是错误的选择。

0 投票
1 回答
245 浏览

php - PHP 无法重新声明类 - 需要错误 - Silex 框架

我正在做一个项目,但我有一个非常烦人的问题。我使用一个 PHP 文件 rb.php,其中包含项目的几个重要类(RedBean ORM 的文件 rb.php,合而为一)。问题是我可以在特殊位置正确使用文件,但不能在其他位置使用。

这是我的树状结构:

树状

当我去 index.php 时,一切顺利,我可以做到require('rb.php');

我有 $lifeCycle 的良好价值。但我想在控制器中使用这个文件来实现 add()、updates() 等功能。所以我试试这个:

但我有这个错误:

很好,我认为该文件必须已经存在!但如果我评论它我有这个错误:

这是正常的,因为这个类在我刚刚评论的 rb.php 文件中。

如果我做一个要求,我有一个类 redeclare ,但如果我不放它,它就没有一个类。任何帮助将不胜感激。