我有一个Dictionary<key,dataValue>
. 问题是它dataValue
可以是 int、float、vector2、vector3、byte、short、uint 或 bool 类型。我想避免装箱,所以我不能让 dataValue 成为一个对象。
我可以创建一个可以将任何数据类型存储在同一字节数组中的数据类型(类或结构)吗?数据类型中的枚举将保存类型(int,float,bool ...),以便我们知道如何解释字节数组中的数据?
编辑:代码可能不安全。
[StructLayout(LayoutKind.Explicit)]
struct TestUnion
{
[FieldOffset(0)]
public int i;
[FieldOffset(0)]
public double d;
[FieldOffset(0)]
public char c;
[FieldOffset(0)]
public byte b1;
}
像这样的东西会起作用吗?