прошу совет. К примеру, есть шаблон:
template <size_t NUM_OF_BIT>
class BitSet {};
У меня есть понимание, что бит может быть, к примеру, 4, 8, 16, 32, 64 ... 4096. Но под сколько конкретно бит нужно создать объект, я узнаю только в процессе выполненияб в виде переменной, на основании которой напрямую шаблон создать, конечно же, нельзя. Решение в лоб - это switch-case, но слишком большой блок получается. Нет ли решения элегантней? Или я вообще фигню изобретаю?
Не делать его шаблоном, а передавать в рантайме?
Создай динамический битсет
а чем не угодил: https://devdocs.io/cpp/utility/bitset или просто прокачка скилов?
Если пофиг на скорость, то можно замутить костыль с вектором булов
Я вообще не понял проблему... У тебя байт 8 бит. Раздели входной параметр на 8, создай массив байт этого размера (плюс один, если есть остаток) - все что надо.
К тому же есть std:: vector bool который это уже делает.
Обсуждают сегодня