4 ms·
The issue we complain about in JavaScript is one like this: class C { handleEvent() {} someMethod() { onEvent(this.handleEvent
by MoTTs_ 8y ago
The issue we complain about in JavaScript is one like this:
class C {
handleEvent() {}
someMethod() {
onEvent(this.handleEvent); // bad; "this" lost
onEvent(this.handleEvent.bind(this); // ok
}
}
C++ requires the same thing. The bad case will even generate an error at compile time.
class C {
public:
void handle_event() {}
void some_method() {
on_event(&C::handle_event); // bad; error
on_event(std::bind(&C::handle_event, this)); // ok
}
};