Есть ли в Dart эквивалент std :: bind, как для C ++? - PullRequest
0 голосов
/ 10 мая 2018

Предположим, у меня есть что-то вроде этого

void funct(int a ,int b)
{
    std::cout << a+b ;//3+2=5
}

в C ++ мы можем привязать значение к параметру для b, поэтому обратный вызов должен будет передать только один параметр. Можем ли мы сделать это в дротике?

int main()
{
 auto f = std::bind(&funct,std::placeholders::_1,2); //pass b=2
 f(3);
}

1 Ответ

0 голосов
/ 10 мая 2018

Как указано в комментарии под вашим вопросом, вы можете сделать это с помощью закрытия:

void funct(int a, int b) {
  print(a + b);
}

void main() {
  var f = (b) => funct(2, b);
  f(3);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...