Maison >développement back-end >C++ >Comment puis-je transmettre des paramètres supplémentaires aux gestionnaires d'événements dans la programmation orientée objet ?
Passage de paramètres supplémentaires pour les gestionnaires d'événements dans la programmation orientée objet
En programmation orientée objet, un gestionnaire d'événements est une fonction ou une méthode qui est exécutée lorsqu'un événement spécifique se produit. Ces événements peuvent être déclenchés par des actions de l'utilisateur (telles que des clics sur des boutons) ou des processus système (tels que l'achèvement d'une opération).
Considérez le scénario suivant : vous souhaitez transmettre des données supplémentaires à un gestionnaire d'événements lorsqu'il est attribué. Par exemple :
<code class="language-c#">private void setup(string someData) { Object.assignHandler(evHandler); } public void evHandler(Object sender) { // 需要在此处使用 someData!!! }</code>
Dans cet exemple, vous souhaitez fournir la chaîne evHandler
à la méthode someData
lorsqu'elle est déclenchée. Pour ce faire, vous pouvez utiliser des expressions lambda :
<code class="language-c#">private void setup(string someData) { Object.assignHandler((sender) => evHandler(sender, someData)); } public void evHandler(Object sender, string someData) { // 现在您可以访问 someData 了! }</code>
En enveloppant la fonction evHandler
dans une expression lambda, vous pouvez transmettre le paramètre someData
comme paramètre supplémentaire. Lorsque l'événement se produit, l'expression lambda s'exécutera et fournira la valeur someData
à la méthode evHandler
. Cela vous permet d'accéder à des données supplémentaires dans le code de gestion des événements.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!