我目前正在阅读一些 C++ 源代码,我遇到了这个:
double **out;
// ... lots of code here
// allocate memory for out
out = new double*[num];
不完全确定它的作用或含义。它是……指向另一个指针的指针吗?
还有以下内容:
double ***weight;
// allocate memory for weight
weight = new double**[numl];
我很困惑 :P,感谢任何帮助。
最佳答案
new double*[num]
是一个双指针数组,即数组的每个元素都是一个 double*
。您可以使用 out[i] = new double;
为每个元素分配内存。类似地,weight
是一个 double**
数组。您可以使用 new double*[num]
为每个权重元素分配内存(如果它应该是 double*
的数组)
关于c++ - C++中的**是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3572630/