gpt4 book ai didi

c++ - 传递数组时正在使用未初始化的变量

转载 作者:行者123 更新时间:2023-11-28 02:53:45 25 4
gpt4 key购买 nike

void initPLBP(double *mat)
{
if (...)
{
int pcaDim = 10;
int featureDim = 80;
}
mat = new double[10 * 80];
}


void main()
{
double* pcaMat;
initPLBP(pcaMat);
}

当我运行代码时,它说“正在使用变量‘pcaMat’而没有被初始化”。问题是我无法在主函数中为 pcaMat 分配内存(出于其他原因要求)。有什么解决办法吗?谢谢你

最佳答案

编译器的意思是变量“pcaMat”(指针)没有被初始化,所以它在使用前没有指向任何东西。不是指点对象。

void initPLBP(double *&mat)
{
if (...)
{
int pcaDim = 10;
int featureDim = 80;
}
mat = new double[10 * 80];
}

int main()
{
double* pcaMat = 0;
initPLBP(pcaMat);
}

关于c++ - 传递数组时正在使用未初始化的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22469684/

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