c++ - 创建一个结构数组但稍后定义大小?

标签 c++ arrays pointers struct

我正在尝试创建一个结构数组,但稍后定义它的大小,如下所示:

struct xy{

int x;
int y;
};

int main(){
    xy pos;
    int size = 10;
    pos = new xy[size];
    pos[0].x = 5;
}

但是无论我怎么尝试,我都无法让它工作。另外我不想为此使用 vector ,所以请不要说我应该。

最佳答案

new 返回一个指针:

int main(){
    xy* pos;
    int size = 10;
    pos = new xy[size];
    pos[0].x = 5;
}

关于c++ - 创建一个结构数组但稍后定义大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5628240/

相关文章:

c++ - 适当保护编辑控件免受 SQL 注入(inject)和无意义字符的影响

c++ - 因此,我制作了一个程序,用C++和Java打印Pascal的Triangle,由于某种原因,当我进行14行以上打印时,它开始中断?

c - 如何在C中接受数组中的多个字符串(使用Turbo C++ V3.0)并根据每个字符串包含的元音数量对它们进行排序

C++ 整数数组和 boolean 函数

c - scanf ("%d", *p) 和 scanf ("%d", p) 有什么区别?

pointers - 指针是否存储为整数?

c++ - 将 std::atomic_flag 包装在 getter/setter 中是否会使它的 "atomicity"无效?

c++ - 在2维数组上使用delete []时发生访问冲突

arrays - 使用循环获取数组中的输入

c++ - 我可以在不调用未定义行为的情况下存储指向不存在数据的指针吗?