arrowcircle
New member
Добрый день.
Пытаюсь упаковать основной код программы в класс. Все получается хорошо, кроме коллбеков на подключение/отключение WiFi.
program.h
program.cpp
Ошибка:
Пробовал передавать Program:nWifiConnect, this.onWifiConnect и this->onWifiConnect, но все равно вылезают ошибки. Понял, что тут вопрос понимания и перебором делать бесполезно.
Как правильно передать метод объекта класс как колбек для WiFi?
Пытаюсь упаковать основной код программы в класс. Все получается хорошо, кроме коллбеков на подключение/отключение WiFi.
program.h
Код:
class Program {
public:
Ticker wifiReconnectTimer;
WiFiEventHandler wifiConnectHandler;
void onWifiConnect(const WiFiEventStationModeGotIP& event);
};
Код:
void Program::setup() {
wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect);
}
void Program::onWifiConnect(const WiFiEventStationModeGotIP& event) {
Serial.println("Connected to Wi-Fi.");
}
Код:
error: no matching function for call to 'ESP8266WiFiClass::onStationModeGotIP(void (Program::*)(const WiFiEventStationModeGotIP&))'
Как правильно передать метод объекта класс как колбек для WiFi?