我正在为嵌入式应用程序创建一个 C++ 类,而我正在使用的库定义了一些期望函数参数设置回调的函数:
class WebServer
{
public:
typedef std::function<void(void)> THandlerFunction;
void on(const String &uri, THandlerFunction handler);
}
我在我的使用这个类:
MyWebControl::MyWebControl()
{
WebServer _server(80);
}
MyWebControl::onHandler()
{
// do stuff
}
现在我需要onHandler
使用_server
对象的函数“连接”我的on()
函数:
MyWebControl::MyWebControl()
{
WebServer _server(80);
_server.on("/", onHandler);
}
但这给了我一个编译器错误:
错误:无效使用非静态成员函数_server.on("/", onHandler);
在这种情况下,我可以将此方法设为静态,但有必要吗?