问题标签 [unions]
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 中联合的问题 - 存储为一种类型并读取为另一种类型 - 是否定义了实现?
我正在从 K&R 阅读 C 中的 union,据我了解,union 中的单个变量可以保存多种类型中的任何一种,如果某些内容作为一种类型存储并作为另一种类型提取,则结果纯粹是实现定义的。
现在请检查此代码段:
输出:
在这里,我在 中分配值,但同时从和中u.ch
检索。是否定义了实现?还是我在做一些非常愚蠢的事情?u.ch
u.i
我知道对于大多数其他人来说,这可能看起来很初学者,但我无法弄清楚该输出背后的原因。
谢谢。
c - union 与 void 指针
简单地使用 void* 与 union 有什么区别?例子:
两者都可以用来完成完全相同的事情,但是使用 union 还是 void* 更好?
c++ - 联合内的奇怪行为类对象
嗨,我想知道以下代码的原因
对于上面的代码,它给出了错误“错误 C2620: union 'Test': member 't1' has user-defined constructor or non-trivial default constructor ”
对于以上内容,没有错误。
我想知道原因。
先感谢您。:)
c - 是否可以(合法)在复合文字中分配匿名联合?
我有一个结构:
当我尝试分配复合文字时,例如:
gcc 给了我一些警告,例如:
好吧,很明显编译器不确定我是否只是将值分配给可能不明确的类型。但是,即使我尝试更精确地指定:
我得到:
我已经读过,如果我把它放在(union <union name>)
之前i:
,它可能会起作用。但是,我更喜欢匿名工会。有没有办法做到这一点?
c++ - union 成员可能没有构造函数,但是`std::pair` 好吗?
union
成员可能没有析构函数或构造函数。因此,如果有构造函数Foo
,我不能自己模板化以下类:MyClass
MyClass
如果我仍然这样做,我会收到此错误:
为了解决这个问题,我创建MyClass
了一个笨拙的构造函数,它首先复制周围的东西:
但我想知道是否有比使用此createMyClass
功能更好的方法。构造函数会更高效,并且作为关键组件MyClass
,Foo<MyClass>
在我的代码中被构造了数百万次。
标准::对
我也有点惊讶它可以用于std::pair
:union
据我所知,std::pair
(见代码)有一个构造函数?
.net - PInvoke 返回带有联合的 C 类型
如何 IP/Invoke 返回联合结构的 C 函数?
c++ - 使用联合来避免动态分配难题
我很好奇在访问返回可变长度结构的 Win32 API 时使用联合是否是个好主意,以避免手动管理分配的内存。
考虑以下:
这有什么大问题吗?
c++ - C:联合实际用在什么地方?
我有一个例子,其中保证了类型的对齐, union max_align 。我正在寻找一个实际使用联合的更简单的例子来解释我的朋友。
c - 在 yacc 中对结构使用 union
我对如何指定我的语法成员的类型有点困惑。我想将 prog 和 decls 声明为 ASTNode。我将使用这些成员添加到列表等。但是 yacc 无法将它们识别为 ASTNode 并且我收到类型错误。
这里我的 tIdent,tCharConst,tIntConstant 有一些类型,但是,如何将 ASTNode 类型提供给我的成员。
c++ - 如何使用匿名结构/联合编译 C 代码?
我可以在 c++/g++ 中做到这一点:
然后,
将工作。
使用 gcc 在 c 中如何做到这一点?我有
但是我到处都有错误,特别是