битовые или нативные типы данных с побитовыми операциями для битовой карты? - PullRequest
0 голосов
/ 13 октября 2011

Я хотел бы реализовать битовые карты 64 бит, 128 бит и 256 бит. Я думал об использовании специализированных классов для этих трех. Мне нужно установить биты, а также посмотреть их. Набор битов не будет динамическим, будут использоваться статические реализации 64, 128 и 256 бит.

Каковы плюсы и минусы использования набора битов c ++ поверх нативного типа, такого как long long, и манипулирования битами с помощью побитовых операций?

Есть ли издержки при использовании набора битов при инициализации или по любому другому фактору?

Спасибо

1 Ответ

2 голосов
/ 13 октября 2011

Ну, определенно есть некоторые издержки в стандартных битовых наборах. Ваша реализация будет быстрее (но вам нужно приложить некоторые усилия для ее кодирования, чтобы она была эффективной и без ошибок).

Однако я бы использовал стандартные наборы битов и не боролся с этими издержками, пока это не окажется проверенным узким местом. Вы знаете часто цитируемое высказывание о преждевременной оптимизации, верно?

...