Обновить

Комментарии 2

Отличная статья! Спасибо за проделанную работу.

Хорошая статья!

Буквально пару недель назад писал себе что-то подобное для форвард итератора в интерфейсе, который надо было уметь мокать, при этом сохранив его тривиально копируемым и не используя виртуальные вызовы (по понятным причинам)

std::function ожидаемо не подошёл, т.к. занимает не менее 4 байт, а простецкий итератор, помимо указателя на ноду, должен также уметь ходить хотя бы вперёд + разыменовываться на кастомный тип, что уже вылазит за 64 бита (32+32+8=72)

Пришлось так же развелкаться с void-указателями и шаблонным конструктором с constexr-лямбдами, зато все аккуратно влезло в 24 бита

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации