首页 > 解决方案 > 将内存分配返回值转换为 TYPE 数组

问题描述

尝试在 VisualStudio 中执行以下操作,但没有成功。基本上我有类型TypeA,我想创建一个数组TypeA,比如说TypeA array[10];

但我希望数组在堆上而不是在堆栈上,因为它会很大(比如0x200000)或其他东西。

所以,我试图在代码方面做的事情是这样的:

struct TypeA {
    UINT64 a;
    UINT64 b;
    UINT64 c;
    UINT64 d;
};

TypeA array[0x10000] = (TypeA[0x10000])malloc(sizeof(TypeA)*0x10000);

标签: c++arraysvisual-studiocastingmalloc

解决方案


与所有动态数组一样,使用std::vector.

std::vector<TypeA> array(0x10000);

推荐阅读