- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
int main(void)
{
std::string data = "HELLO WORLD!\n";
std::transform(
data.begin(), data.end(),
std::ostream_iterator<char>(std::cout, ""),
std::bind(std::plus<char>(), std::placeholders::_1, 1));
return 0;
}
bormand # 0
А bind можно попробовать на лямбду поменять. Вроде нагляднее будет.
[email protected] # 0
int main(void) → int main()
C++14:
std::plus<char>() → std::plus<>{}
std::string data = "HELLO WORLD!\n"; → auto data = "HELLO WORLD!\n"s;
C++20:
std::transform(data.begin(), data.end(), → std::ranges::transform(data,
PolinaAksenova # 0 ⇈
bind ня нужен.
[email protected] # 0 ⇈
bormand # 0 ⇈
Кстати, только сегод-ня узнала, что bind не контролирует количество аргументов и тупо отбрасывает лишнее: Опасная штука. Зачем они так?
PolinaAksenova # 0 ⇈
digitalEugene # 0 ⇈
digitalEugene # 0 ⇈
с bind короче.
bormand # 0 ⇈
bormand # 0