Wann und wie verwendet man in C++ eine Callback-Funktion?
EDIT :
Ich würde gerne ein einfaches Beispiel für eine Callback-Funktion sehen.
Wann und wie verwendet man in C++ eine Callback-Funktion?
EDIT :
Ich würde gerne ein einfaches Beispiel für eine Callback-Funktion sehen.
@Pixelchemist hat bereits eine umfassende Antwort gegeben. Aber als Webentwickler kann ich einige Tipps geben.
Normalerweise verwenden wir tcp
zu entwickeln a web framework
Wir haben also normalerweise eine Struktur:
TcpServer listen port and register the socket to epoll or something
-> TcpServer receive new connection
-> HttpConenction deal the data from the connection
-> HttpServer call Handler to deal with HttpConnection.
-> Handler contain codes like save into database and fetch from db
Wir können den Rahmen als Auftrag entwickeln, aber es ist nicht freundlich zu dem Benutzer, der nur die Pflege der Handler
. Es ist also an der Zeit, die callback
.
Mutiple Handler written by user
-> register the handler as callback property of HttpServer
-> register the related methods in HttpServer to HttpConnection
-> register the relate methods in HttpConnection to TcpServer
Der Benutzer muss also nur seine Handler beim httpserver registrieren( usually with some path string as key
), die andere Sache ist generisch der Rahmen tun kann.
Sie können also feststellen, dass wir die callback
als eine Art Kontext, den wir an andere delegieren wollen, um ihn für uns zu erledigen. Der Kern ist, dass we don't know when is the best time to invoke the function, but the guy we delegate to know.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.