问题标签 [static-array]
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.
c++ - 如何在类的构造函数中定义一个没有常量大小的静态数组?(C++)
我有一个类定义为:
我需要它包含一个像这样的静态数组:
但是,我无法在类中定义,因此可以创建指向 2D 数组的指针(出于好奇,还可以创建 3、4 和 5D 数组),将其作为类的成员,并将其初始化为构造函数如:
编辑:这里的想法是每个对象都有不同的宽度和高度,所以我用来表示该对象的数组对于该对象将是唯一的,但是一旦定义了该数组(最好在构造函数中),它就不会改变. 并且特定对象的宽度和高度值在编译时是已知的。
编辑:数组用于碰撞检测,方法是将presc
两个对象的数组叠加到一个大数组上,并查看重叠的位置,声明如下:
c++ - 使用未指定大小、空括号定义的静态数组?
对于下面的 C++ 代码片段:
为什么成员变量也不会导致错误?这个成员变量是什么意思?
我通过 CodeBlocks 8.02 使用 gcc 版本 3.4.5 (mingw-vista special)。
在 Visual Studio Express 2008 - Microsoft(R) C/C++ Optimizing Compiler 15.00.30729.01 for 80x86 上,我收到以下消息:
现在,这也需要一些解释。
c++ - 在 C++ 中以编程方式在编译时创建静态数组
可以在编译时定义一个静态数组,如下所示:
问题 1 - 是否可以通过使用各种元编程技术在编译时“以编程方式”分配这些值?
问题 2 - 假设数组中的所有值都是相同的,那么是否可以在编译时以编程方式有选择地分配值?
例如:
- 欢迎使用 C++0x 的解决方案
- 数组可能很大,几百个元素长
- 现在的数组将只包含 POD 类型
- 还可以假设以静态编译时兼容的方式预先知道数组的大小。
- 解决方案必须使用 C++ (无脚本、无宏、无 pp 或基于代码生成器的解决方案)
更新: Georg Fritzsche 的解决方案非常棒,需要一些工作才能在 msvc 和 intel 编译器上进行编译,但仍然是一种非常有趣的解决问题的方法。
objective-c - Objective C - 我如何定义一个静态数字数组,该数组可供我的类中的所有方法访问?
我如何定义一个 STATIC 数字数组,该数组可供我的类中的所有方法访问???
c# - 转换没有大量新调用的结构的 C++ 数组?
C++
我知道在 C# 中初始化这样一个表的唯一方法是编写类似的东西
有没有办法让一个(引用)类 SomeClass 类型的值数组而不是指向这些值的指针?
编辑:
关键是我想避免为数组中的每个结构调用 new 。所以我想要的是一个包含 1000 个结构的数组,而不是 1000 个指向 (1000) 结构的指针。我问的原因是 C# 处理这个问题的方式对我来说似乎非常低效,涉及大量内存和内存管理开销(例如 C++)。
我试过类似的东西
但那是不可能的。因此,尽管我知道结构是值类型,但我得出的结论是,只有在将它们作为参数传递给函数时,这才是正确的,并且我必须使用 new,就像这样(在此处使用结构):
c++ - 我们可以创建大小为执行时常量的静态数组吗?
我们都知道静态数组的基本规则:
是不合法的。和。
没关系。
但是,这又如何。
MSVC 说这是一个错误,gcc 似乎可以编译并执行它。
显然,它不可移植,但它应该被接受吗?
哪个编译器在这种情况下做正确的事情?
此外,如果编译器允许,那么良好的编程标准/实践是否应该允许?
编辑:这个想法是我想要堆栈分配速度,但我在编译时不知道数组的大小。我知道还有其他一些解决方案,堆栈分配可能不会是一个有意义的优化,但我认为这是一个有趣的用法。
c++ - char 和 char[1] 的区别
在 C++ 中,使用 char 和 char[1] 有什么区别(如果有的话)。
例子:
unsigned char 是否遵循相同的原因?
c++ - 初始化一个三维静态常量数组
我有一个用作查找表的三维静态 const 数组。数组的每个单元格最多可以返回 8 个单独的数字(每个数字是立方体的角 - 准确地说是体素)。例如,MyStaticArray[0][1][1]
可能返回 1,2,5,7。它可以返回单个数字或最多八个数字,例如:1,2,3,4,5,6,7,8。
我已经准备好查找表(在纸上),我的问题是最好的存储方式是什么?最初我使用 a static const unsigned char[][][]
,但在这种情况下显然行不通,因为表可以返回多个数字(同样,从 1 到 8)。
我的下一个解决方案是返回一个无符号字符数组。即静态 const unsigned char* [][][]。我如何初始化它(也就是说,我如何初始化静态 const 数组以返回给我的 unsigned char 数组,它们也是静态的,这样我就可以在不初始化类的情况下访问它们)?有没有更好的办法?
我希望我能够正确解释这个问题。如果没有,请告诉我,我会尝试改写它和/或提供额外的信息。
arrays - 如何在没有 GC 分配的情况下初始化 D 中的静态数组?
在 D 中,所有数组字面量都是动态数组,因此由 GC 分配。
即使在这个简单的例子中:
该数组是堆分配的,然后复制到a
.
你应该如何在没有堆分配的情况下初始化一个静态数组?
您可以手动完成:
但这充其量是乏味的。
有没有更好的办法?
android - 如何从字符串数组中提取名称属性?
嗨,我构建了一个测验应用程序。我有以下(值/)question.xml
我想问一个有四个可能答案的问题,但是当我用 Java 检索我的答案时。我不知道哪个答案是正确的。所以我决定在项目标签中使用名称属性来传递“正确”或“错误”答案的值。无论如何要获得名称和标签值?
因为当我使用 String[] test = res.getStringArray(R.array.question); 我只能获取数组中每个项目的值。
或者因为这是我第一次使用 Android。有没有其他合适的方法来做到这一点?
谢谢