【问题标题】:C++ inheritance of Arduino SoftwareSerial classArduino SoftwareSerial类的C++继承
【发布时间】:2012-10-30 22:05:56
【问题描述】:

我正在尝试创建一个继承自 SoftwareSerial 类的新类(如下代码段所示)。当我将新类声明为class SerialGSM : public Stream 时,它会编译。但是当使用class SerialGSM : public SoftwareSerial 时,它会失败并显示消息

'{'标记之前的预期类名

以下是相关代码段:

#ifndef _SerialGSM_H
#define _SerialGSM_H
#include "Arduino.h"
#include <SoftwareSerial.h>
class SerialGSM : public SoftwareSerial {
public:
    SerialGSM(int RXPin,int TXPin);
protected:
    float payRate;
};
#endif /* not defined _SerialGSM_H */

【问题讨论】:

  • 这表明SoftwareSerial的定义不在你包含在这个文件中的头文件中
  • expected class-name before'{ :标识符 SoftwareSerieal 未被识别为类类型。转发声明它以代替 #include &lt;SoftwareSerial.h&gt;。编译器错误是否仍然存在?

标签: c++ class inheritance arduino


【解决方案1】:

解决了。

添加

 #include <SoftwareSerial.h>

在 pde 上也是如此。

#include <SerialGSM.h>
#include <SoftwareSerial.h>
SerialGSM cell(2,3);
void setup(){  
 cell.begin(9600);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    相关资源
    最近更新 更多