Здравствуйте, sergii.p, Вы писали:
SP>ошибку конвертации можно убрать исправив лямбду
SP>SP>[n=std::uint8_t{0}]() mutable { return static_cast<char>(++n); })
SP>
SP>наверное это более правильно, потому как библиотечный код не должен делать неявные преобразования.
Можно, но у меня нет лямбды, есть функция, которая получает два итератора на байты, и OutputIterator. Этот OutputIterator я создаю для std::string, но ничто не должно мне помешать сделать тоже самое для вектора из uint8_t. Поэтому я хотел скастить к OutputIterator::value_type, но у back_insert_iterator это всегда void. Сейчас ковыряюсь через iterator_traits, но там тоже какое-то г полезло
UPD Переделал пример, как это у меня с шаблоном, и как я пытаюсь с кастом к value_type —
https://gcc.godbolt.org/z/5n89nv6jY