【发布时间】:2013-11-16 14:15:45
【问题描述】:
所以给定这个c 结构:
typedef struct {
int* arr1;
int* arr2;
} myStruct;
This answer 描述了使用单个malloc 来同时分配myStruct 及其数组:
myStruct* p = malloc(sizeof(*p) + 10 * sizeof(*p->arr1) + 10 * num * sizeof(*p->arr2);
if(p != NULL) {
p->arr1 = (int*)(p + 1);
p->arr2 = p->arr1 + 10;
}
我想知道new 有类似的方法吗?
显然,我希望能够分配给我在运行时收到的大小,就像在 C 示例中所做的那样。
【问题讨论】:
标签: c c++ c malloc new-operator dynamic-memory-allocation