gpt4 book ai didi

C++ 指针数组声明

转载 作者:行者123 更新时间:2023-11-30 00:36:23 24 4
gpt4 key购买 nike

目前我有几个类,其中的数组定义为“float myIDs”。我想将变量移动到我的父类中并将其更改为指针 ('float * myIDs')。

目前我声明它的值是这样的:

float myIDs[] = {
//Variables
};

因为它现在是一个指针,我认为它会大致相同:

myIDs = new float[] = {
};

但这似乎不起作用。我不确定如何解决这个问题,因为我以前从来没有像这样声明过指针数组。

谁能帮帮我?

谢谢

最佳答案

请注意,您分配的不是指针数组,而是 float 组,所以基本上您的两个数组具有相同的类型,它们只是不会存储在相同的内存空间中。

只能以这种方式初始化静态分配的数组,不能将动态分配的数组初始化为零以外的任何值。

myIDs = new float[]();

但是如果你知道要放入数组的元素,就不需要动态分配它。

如果你想分配一个指针数组,你必须这样做:

float* myIDs[size]; // statically
float** myIDs = new float*[size]; // dynamically

但是只有静态分配的(第一个)可以按照你描述的方式初始化,当然,它必须用指针初始化。

关于C++ 指针数组声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16053643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com