- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个名为 Thermostat
的 Arduino 类,它使用 DHT
库。
我认为错误可能是我对 _dht
实例的声明和初始化感到困惑。
我的目标只是让我的主要草图干净,让类 Thermostat
处理与 DHT 相关的所有事情。
这是我的草图:
#include "Thermostat.h"
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
这是我的Thermostat.h
文件:
/*
Thermostat.h - Library for smart thermostat
*/
#ifndef Thermostat_h
#define Thermostat_h
#include "Arduino.h"
#include <DHT.h>
class Thermostat {
public:
Thermostat();
void DHTstart();
private:
DHT _dht(uint8_t, uint8_t); //// Initialize DHT sensor for normal 16mhz Arduino
};
// class initialization
Thermostat::Thermostat(){
_dht(7,DHT22);
}
void Thermostat::DHTstart(){
_dht.begin();
}
#endif
我收到以下错误:
In file included from /Users/olmo/Documents/Arduino/debug_DTH_inClass/debug_DTH_inClass.ino:2:0:
sketch/Thermostat.h: In member function 'void Thermostat::DHTstart()':
Thermostat.h:24: error: '((Thermostat*)this)->Thermostat::_dht' does not have class type
_dht.begin();
^
exit status 1
'((Thermostat*)this)->Thermostat::_dht' does not have class type
最佳答案
几乎是正确的,但是 DHT _dht(uint8_t, uint8_t);
是方法原型(prototype)(而不是 DHT
实例)。并且您必须在构造函数初始化列表中初始化此实例:
class Thermostat {
public:
Thermostat();
void DHTstart();
private:
DHT _dht; //// Initialize DHT sensor for normal 16mhz Arduino
};
// class initialization
Thermostat::Thermostat()
: _dht(7,DHT22) // construct DHT instance with expected parameters
{ ; }
void Thermostat::DHTstart(){
_dht.begin();
}
或更短的版本:
class Thermostat {
public:
Thermostat() : _dht(7, DHT22) {;}
void DHTstart() { _dht.begin(); }
private:
DHT _dht;
};
在这种情况下(DHT 类的魔法值)您可以使用 c++11 功能(自 Arduino 1.6.5 起)并直接指定它,因此可以使用默认构造函数:
class Thermostat {
public:
void DHTstart() { _dht.begin(); }
private:
DHT _dht{7, DHT22};
};
关于c++ - ((Thermostat*)this)->Thermostat::_dht' 没有类类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48366479/
我正在尝试创建一个名为 Thermostat 的 Arduino 类,它使用 DHT 库。 我认为错误可能是我对 _dht 实例的声明和初始化感到困惑。 我的目标只是让我的主要草图干净,让类 Ther
我正在尝试以编程方式 (Android) 更改我的 Nest 的温度,但没有成功。请求工作可能是 30-50 次尝试中的 1 次。 我已尝试通过 Firebase Nest SDK 执行此操作,但根本
您好,在我的应用程序中,我需要实现 Nest Thermostat。为此,我正在检查 nest 提供的示例代码,因为我在成功运行代码后注册了我的客户端,它生成了身份验证代码,并且,我必须发送此访问 t
我正在尝试自己构建一些智能家居设备。我对构建像 Nest Thermostat 那样能够了解房屋特征和家庭成员行为的物联网算法非常感兴趣。 虽然我有一定的机器学习基础,但我对热模型知之甚少,而热模型是
如果 Nest Thermostat 设备处于“冷却”或“加热”状态,它会显示在屏幕上。如何通过 Nest API 获取此状态? hvac_mode属性似乎只是显示用户的 Thermostat 能够控
Nest 恒温器 SDK,使用 Nest 的 iOS 示例代码作为引用。 示例代码中概述了温度设置。将离开状态设置为 away 或 home(不是向 firebase 发送的字符串值)。 来自上一个问
我正在编写一个 Android 应用程序来控制 Nest 恒温器。我能够很好地连接到它,并且可以读取正确的目标温度(转动恒温器上的旋钮会更新我的 TextView)。 但是,当我尝试这样写目标温度时,
Nest change target_temperature_f : 如何使用 java http PUT 通过 android 代码设置 Nest Thermostat 的目标温度? 最佳答案 您可
我是一名优秀的程序员,十分优秀!