说,我在C#
中具有以下结构:
public struct MyStructCSharp
{
private byte[] offsets = new byte[] { 28, 20, 27, 36 };
}
您在
C/C++
中如何做?以下似乎无效:
typedef struct _MyStructCpp
{
_MyStructCpp()
{
offsets[] = {28, 20, 27, 36};
}
private:
unsigned char offsets[];
}MyStructCpp;
最佳答案
声明数组后,您将无法分配它。除此之外,语法将是错误的。如果它只有4个元素,则执行此操作,或者如果可以的话,仅使用vector
。
struct MyStruct {
MyStruct() {
offsets[0] = 28;
offsets[1] = 20;
offsets[2] = 27;
offsets[3] = 36;
}
private:
unsigned char offsets[4];
};
另外,请勿在类型名称下加下划线。这些是保留的,可能会导致令人讨厌。