c++ - 初始化任何联合成员(指定初始化器)
问题描述
宣布工会时,例如
union u
{
int x;
float y;
};
您可以按如下方式构建联合:
u integer { .x = 10 };
u fraction { .y = 10.f };
假设我有一个指向成员的指针,
auto union_member_pointer = &u::y;
什么语法允许我抽象地分配给工会的那个成员?IE
u unknown { .*union_member_pointer = { } }; // doesn't work
解决方案
指定的初始化不允许是动态的。它应用于成员的名称,而不是成员指针或类似的名称。
推荐阅读
- javascript - checkValidity / reportVality 不适用于通过代码设置的值
- mysql - 将 NOT IN 转换为 WHERE 加入
- firebase - 如何在 Firebase 主机上部署 streamlit python 应用程序?
- ubuntu - tmux 是否支持 vim 中使用的 cterm=undercurl?
- laravel - 当有超过 12 个验证规则时,Laravel 不返回错误消息
- ruby-on-rails - 设计 activerecord 错误自定义消息及其翻译
- ios - 操作表文本始终为灰色(NSAttributedString.Key 不起作用)
- c# - 如何将我的控制台应用程序 dll 放入逻辑应用调度程序而不是 Web 作业?
- php - 如何读取标签中包含特殊字符的 SimpleXML-Object 值?
- security - 如何证明服务器正在运行某个代码