次のように定義された f という共用体があります
union uf {
unsigned u;
float f;
}
私には2つの機能があります。
void inner_function(uf& in) {
//modify in
}
void outer_function(unsigned& val) {
inner_function(static_cast<uf> (val));
}
'uf' 型の一時的なエラーから、'uf&' 型の非 const 参照の無効な初期化が発生する理由を説明してください。
だから私はこれをキャストできないことを理解しています。では、誰かがこの問題をどのように修正できるのでしょうか? 私はこれが機能することを知っています
void outer_function(unsigned& val) {
uf a;
a.u = val;
inner_function(a);
val = a.u;
}
より効率的なものはありますか?