我有一个数组:
const int neoPixelCount = 40;
CRGB neoPixels[neoPixelCount];
我有一个
Dancer
,需要保留该数组的引用。它具有一个init
方法,如下所示:// .h
class Dancer {
public:
CRGB neoPixels[];
void init(CRGB neoPixels[]);
}
// .cpp
void Dancer::init(CRGB _neoPixels[]) {
neoPixels = _neoPixels;
}
但是当我调用它时,编译器不会让我将引用传递给数组。
dancer->init(neoPixels);
产生:
使这项工作正确的语法魔术是什么,为什么?
最佳答案
您只需要在类成员声明中将CRGB neoPixels[];
更改为CRGB* neoPixels;
,因为您想存储一个指针(指向数组)而不是零/未知长度的数组。
关于c++ - 在C++中存储对数组的引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23719522/