1
我創建了1個帶有2個類的庫。 Class Wave和Class LEDLamps。在第二個類的構造函數中,我試圖在沒有任何運氣的情況下填充第一類對象的數組。Arduino:初始化構造函數中的自定義對象
這是我的真實代碼的一些部分。 .h文件:
static const int numberOfWaves = 20;
class Wave
{
public:
Wave(int speed, int blockSize, int ledCount, int lightness,int startCount); // Constructor
private:
};
// ------------------------------------------------------------------------------------------- //
class LEDLamps
{
public:
LEDLamps(int8_t lampCount, int8_t dataPin, int8_t clockPin); //Constructor
private:
Wave waveArray[numberOfWaves];
};
.cpp文件
Wave::Wave(int speed, int blockSize, int ledCount, int lightness, int startCount) //Constructor
{
// Doing some stuff...
}
// ------------------------------------------------------------------------------------------- //
LEDLamps::LEDLamps(int8_t lampCount, int8_t dataPin, int8_t clockPin) //Constructor
{
int i;
for (i = 0; i < numberOfWaves; i++) {
waveArray[i] = Wave(10,2,25,150,100);
}
}
錯誤消息:
LEDLamps.cpp: In constructor 'LEDLamps::LEDLamps(int8_t, int8_t, int8_t)':
LEDLamps.cpp:66: error: no matching function for call to 'Wave::Wave()'
LEDLamps.cpp:14: note: candidates are: Wave::Wave(int, int, int, int, int)
LEDLamps.h:23: note: Wave::Wave(const Wave&)
我從錯誤消息中的參數錯誤理解什麼,但我要送5的整數和構造函數被定義爲接收5個整數?所以我一定是別的我做錯了...