我有以下数据包布局:
struct PacketLayout
{
int GateCode;
BYTE StringLen;
char String[StringLen];
BYTE ServerStatus;
BYTE ServerStorage;
BYTE ServerNumber;
}
课程是这样的:
class ServerInfo
{
short PacketSize; //Size of the whole packet
BYTE TotalServers; //total of PacketLayout structs
PacketLayout Server[TotalServers];
int GlobalSecCode;
short EncryptedPacketSize; //Same as the first member, just xored
}
所以我遇到的问题是在类或结构中创建一个可变大小的数组,其大小取决于BYTE StringLen(对于结构)和BYTE TotalServers(对于类)指向的最后一个成员。
我不知道解决方案是什么,也许实现一个模板?,如果是这样我可以看到一个例子(我还不熟悉模板)而且我想引用我的成员名称而不自己计算指针位置(就像我现在正在做的那样)。
谢谢。