问题标签 [array-initialization]
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.
java - 使用类型转换进行 Java 数组初始化
以下代码让我感到困惑:
我试图理解为什么这两个初始化彼此不同。第一个是发布声明,而第二个是快捷方式。两者都被声明为Object[]
我的幼稚理解是:
所以运行时类型arr2
正是Object[]
不能转换成String[]
.
但是这里的事情变得很奇怪,因为 Java Array 是 covariant:
String[]
的子类,Object[]
并且arr2
正是 a的子类,从toString[]
转换回on应该可以工作。Object[]
String[]
arr2
对此的任何解释都非常感谢。
c - 结构数组初始化中的 MISRA-C 错误
我有以下内容:
这对我来说似乎很好,但是 MISRA-C 给出了以下错误:
MISRA C:2012 规则 10.3 违规:[R] 表达式的值不应分配给具有较窄基本类型或不同基本类型类别的对象
我试图弄清楚为什么会发生这种情况,但我只能看到它。在类似情况下,构建结果也受到此错误的困扰,我不知道为什么。
有人知道发生了什么吗?
编辑:我还尝试显式转换每个值,但仍然出现相同的错误:
java - 如何从给定的两个字符串数组形成第三个 java 数组
我正在编写一个java代码来处理我遇到的信号,如下所述:
输入:字符串数组 arr1 和 arr2。输出请求:字符串数组 arr3
算法: 1. arr1 有 4 种类型的元素:“A”、“B”和“c”和“”。
arr2 在 arr1 中的“A”、“B”和“c”的对应索引处有一些数字字符串,如“2”、“3”等,arr1 中的元素“”在 arr2 中具有对应的元素“”。
arr3 由 arr1 和 arr2 组成。
arr3 的数字字符串仅对应于 arr1 中的“A”、“B”元素。
在 arr3 中,第一个数字字符串“11”来自“2”、“3”、“3”、“”、“”、“2”、“1”的总数。这些是从“A”到“B”的元素(包括“A”,不包括“B”)。“8”来自“3”、“”、“2”、“3”、“”的总和。下一个“2”来自“2”、“”、“”的总和。最后很明显,“3”、“2”、“3”分别来自“3”、“2”、“3”。
作为编程和 java 的新手,在上述情况下我需要帮助。感谢期待。
c++ - C++ 初始化指针数组
我知道用指针你可以做到这一点:
它将指针设置为 NULL 值。但是,当我尝试这样做时:
我收到“预期的表达式”语法错误。为什么?
注意,我使用的是 g++,上面的代码出现在类构造函数中:
其中有问题的类成员声明为:
c++ - C++中带括号的数组对象的初始化
这里有一个类有两个私有字段 x 和 y;
如下初始化 Point 对象数组时,输出正常;
输出;
但是,如果我们像下面这样初始化 Point 数组,输出会很奇怪;
输出;
为什么 (30,40) 不适用于 Point 对象的初始化?
这是完整的测试代码;
以及完整的测试代码输出;
multidimensional-array - VHDL:为什么像嵌套的一维向量一样初始化二维向量?
在 VHDL 中,数组(向量)可以使用(others => <element>)
.
一维示例:
如果我使用两个嵌套的一维向量,它看起来像这个例子:
好的,这是真正的二维示例:
可以看出,信号的结构与前一个不同,但初始化是相同的。
为什么/不是这种语法:(others, others => '0')
使用/选择?
c++ - 初始化派生对象数组,如聚合
考虑以下类的层次结构:
B
是聚合类,但D
不是(因为存在基类)。有没有办法初始化D
像聚合一样的数组(即没有用户编写的构造函数)?
java - 双括号初始值设定项的范围内没有封闭实例
我有一些类相互嵌套
在这些情况下,我收到错误消息:“错误:范围内没有类型 A 的封闭实例”。从此设置中删除任何元素可修复此错误。此外,获取 x 并将其保存到另一个变量然后使用该变量也可以。
这里发生了什么?对我来说,这似乎是编译器中的一个错误。
c++ - 无法从多维数组的初始化程序中推断出边界
以下代码无法编译:
产生的错误信息是
这是标准规定的吗?如果是这样,那是为什么?我认为在这里推断界限会很容易。
java - 数组初始值设定项的每个元素的位置
所以我想获取数组初始化器中每个元素的位置,例如:
我如何能够获得零件内每个元素的位置
例如:
那么对于任何给定的任意大小和任意数量的维度数组初始化器,我将如何做到这一点?