大佬教程收集整理的这篇文章主要介绍了c – 工会会员活跃的原因是什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经阅读了C 14标准的第9.5章(关于工会的第9.5章),但我还没有找到一个明确的答案,说明工会成员的活动是什么.
有一个说明:
例如,
union U { int i; short s; } u; new(&u.i) int(42);
好的,放置新的更改活动成员,很明显.但是在使用具有普通构造函数的类型时,我们通常不使用placement new.
operator =是否在没有UB的情况下更改活动成员?
u.i = 42;
这里,operator =调用未构造的对象.它定义明确吗?
那这个呢?
struct A { int i0; int i1; }; union U { A a; short s; } u;
是什么让你成为你的活跃成员?设置i0和&我足够吗?
u.a.i0 = 42; u.a.i1 = 99;
如果我写的怎么办:
u.a.i0 = 42; // supposedly this doesn't change the active member to a,as i1 isn't set int x = u.a.i0; // is it fine to read from a.i0? a is not an active member supposedly
在u.a.i0 = 42;之后,活动成员不会改为a(我认为),所以UB要做int x = u.a.i0 ;?
C 17是否改进了活跃成员的描述?
以上是大佬教程为你收集整理的c – 工会会员活跃的原因是什么?全部内容,希望文章能够帮你解决c – 工会会员活跃的原因是什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。