Inheritance 如何使用Arduino实例化具有多态性的对象
我正在尝试使用Arduino实现这些类,但很难将其实例化Inheritance 如何使用Arduino实例化具有多态性的对象,inheritance,arduino,polymorphism,Inheritance,Arduino,Polymorphism,我正在尝试使用Arduino实现这些类,但很难将其实例化 class Component{ private: String _name; int _pin; public: Component(char* name, int pin){ _name = name; _pin = pin; } Component(Component &comp){ _name = comp.get_name(); _pin = comp.get_pin(
class Component{
private:
String _name;
int _pin;
public:
Component(char* name, int pin){
_name = name;
_pin = pin;
}
Component(Component &comp){
_name = comp.get_name();
_pin = comp.get_pin();
}
String get_name(){ return _name; }
int get_pin(){ return _pin; }
void set_name(String value){ _name = value;}
void set_pin(String value){ _pin = value;}
virtual void routine() = 0;
};
class Led : public Component{
public:
Led(char* name, int pin) : Component(name, pin) {}
void routine(){
/* virtual function implemented here*/
}
};
Component *led = new Led("t_red", 11);
我的编译器所说的错误是,在“*”标记之前需要初始值设定项
组件*led=新led(“t_红色”,11)代码>
有什么建议吗?Led
需要一个构造函数
class Led : public Component {
// ...
Led(char* name, int pin) :
Component(name, pin)
{
}
};
你是真的实现了Led
的构造函数,还是遗漏了它?@Rakete1111我遗漏了它。我认为Led可以使用组件构造函数。错误消息有点奇怪,但是省略Led的构造函数是一个错误,您应该首先修复它。