这是我尝试实例化“Melodie”对象的文件:
#include <Melodie.h>
Melodie<5> m(8);
void setup()
{
}
void loop()
{
}
这是“Melodie.h”文件:
#ifndef Melodie_H
#define Melodie_H
#include <Arduino.h>
#include "pitches.h"
template <int NB_NOTES>
class Melodie
{
public:
Melodie(int pin)
{
// Some unimportant stuff
}
void addNote(int pitch, int duration)
{
// Some unimportant stuff
}
void play()
{
// Some unimportant stuff
}
private:
char notes_[NB_NOTES];
char durations_[NB_NOTES];
int notePointer_;
int pin_;
};
#endif
我收到以下错误消息:错误:“<”标记之前的预期构造函数、析构函数或类型转换
为什么?相同的代码工作(减去 arduino 特定的东西)在 Visual Studio 中工作。我以为 WinAVR 支持 C++?