gpt4 book ai didi

c++将参数发送到union(变量 union )

转载 作者:太空狗 更新时间:2023-10-29 23:29:57 25 4
gpt4 key购买 nike

好吧,我找不到怎么做,基本上它是一个带有参数的变量 union ,基本思想,(写成函数)

例子1

union Some (int le)
{
int i[le];
float f[le];
};

例子2

union Some
{
int le;
int i[le];
float f[le];
};

obs 这行不通 D:也许是一种使用内部变量来设置长度的方法,但也行不通。谢谢。

最佳答案

不,这是不可能的:le 需要在编译时 已知。

一个解决方案是使用模板 union :

template <int N> union Some
{
int i[N];
float f[N];
};

N 当然是编译时可评估的。

另一种解决方案可以说更简洁

 typedef std::vector<std::pair<int, float>> Some;

或基于std::array 的类似解决方案。

关于c++将参数发送到union(变量 union ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35271453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com