разрешение перегрузки std :: bind

Swift 3

let result = " abc ".trimmingCharacters(in: .whitespacesAndNewlines)
24
задан James McNellis 29 September 2012 в 03:35
поделиться

1 ответ

Если у вас есть C ++ 11, вам следует отдавать предпочтение лямбда-выражениям над std::bind , поскольку это обычно приводит к тому, что код становится более читабельным:

auto aBind = [&a](int i, int j){ return a(i, j); };

по сравнению с

auto aBind = std::bind(static_cast<int(A::*)(int,int)>(&A::operator()), std::ref(a), std::placeholders::_2, std::placeholders::_1);
17
ответ дан 28 November 2019 в 22:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: