簡體   English   中英

如何使用參數分配回調函數

[英]How to assign callback function with parameters

我需要分配一個具有給定參數的回調函數,因此當事件被觸發並調用該回調函數時,它將調用具有給定參數的函數。 我看過多個網站,一直在尋找解決方案,但沒有運氣。 可能是我太傻了,該怎么辦?

這是我要做的事情-

void callbackFunction(int someParameter) {
 // Do something here
}

master.ButtonL1.pressed(callbackFunction(3));
// The code above doesn't work, just there to show what I'm wanting to do

您可以使用lambda

master.ButtonL1.pressed([]{callbackFunction(3);});

除了使用lambda表達式(如songyuanyao的答案所建議)外,還可以使用以下方法。

void realCallbackFunction(int someParameter)
{
  // DO the real work
}

static int parameter = 0;
void callbackFunction()
{
   realCallbackFunction(paramter);
}

...

paramter = 3;
master.ButtonL1.pressed(callbackFunction);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM