过去我就是这样设置这个全局对象的。
MqttClient mqtt("192.168.1.8", 1883, msgRev);我想检索存储在spiffs中的IP地址,并使用它声明这个全局对象。
MqttClient mqtt(AppSettings.MQTTUWL, 1883, msgRev); AppSettings包含尖峰的结构。
这是我的缺点()
void init()
{
spiffs_mount(); // Mount file system, in order to work with files
AppSettings.load();
//...
}问题是在声明对象代码时,还没有加载AppSettings。如何声明全局对象,使其能够从AppSettings检索值?
我正在ESP8266上使用SMING框架。
发布于 2016-03-09 20:44:41
您必须将MqttClient声明为指针,并在挂载want之后初始化它,或者将want安装代码放入客户端类的构造函数中(这可能不是您想要的)。
要执行前者,您的代码应该如下所示:
MqttClient *mqtt;
void init()
{
spiffs_mount(); // Mount file system, in order to work with files
AppSettings.load();
mqtt = new MqttClient(AppSettings.MQTTUWL, 1883, msgRev);
//...
}这只会在安装完成后创建客户端。
https://stackoverflow.com/questions/35793246
复制相似问题