当我在我的头文件中创建一个obj时,我遇到了一个问题。我无法在构造函数中插入值。(错误:应为类型说明符)。我尝试添加常量,但不起作用。为什么?我该怎么做呢?谢谢!
lcd.h
#ifndef __LCD__
#define __LCD__
#include "Device.h"
#include "Arduino.h"
#include <LiquidCrystal_I2C.h>
class Lcd: public Device {
public:
Lcd();
void switchOn();
void switchOff();
void setFirstRow(String str);
void setSecondRow(String str);
private:
LiquidCrystal_I2C lcd(0x27, 16, 2); // ERROR
};endif
Lcd.cpp
#include "Lcd.h"
#include "Arduino.h"
Lcd::Lcd(){
lcd.init();
}
void Lcd::switchOn(){
lcd.backlight();
}
void Lcd::switchOff(){
lcd.clear();
lcd.noBacklight();
}
void Lcd::setFirstRow(String str){
lcd.setCursor(0,0);
lcd.print(str);
}
void Lcd::setSecondRow(String str){
lcd.setCursor(0,1);
lcd.print(str);
}发布于 2015-02-24 07:43:29
如果您使用的是C++11,您应该能够使用:
LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2);如果您使用的是早期版本的C++,则需要将初始化代码放入构造函数的定义中。
发布于 2015-02-24 07:47:20
让我们来声明一下:
LiquidCrystal_I2C lcd;你可以在构造函数中使用这个sintax
Lcd::Lcd() : lcd(0x27,16,2){
lcd.init();
}https://stackoverflow.com/questions/28685669
复制相似问题