我有一个结构,并希望在SendMessage函数调用时增加数组大小
struct MQStruct {
wchar_t *serviceName;
int durability;
int msgType;
int msgHeader;
wchar_t *msgId;
wchar_t *payload;
int payloadSize;
int ttl;
int priority;
}MQStructObj[1];
int SendMessage(wchar_t *serviceName, int durability, int msgType, int msgHeader, wchar_t *msgId, wchar_t *payload, int payloadSize, int ttl, int priority) {
//Want to add one more array object and also preserve data of previous
MQStructObj[MAX+1]
return 0;
}
答案 0 :(得分:2)
在C中你将不得不处理动态内存(即使用malloc()
分配数组,然后在你停止使用它时注意调用free()
),并且可能使用{{ 1}}增加分配。
在C ++中,问题已经解决,你有realloc()
。您可以致电std::vector
动态添加元素。