Я создаю шахматный решатель и решил использовать битовые доски. Удобно, что на стандартной шахматной доске 64 клетки. Это хорошо, поскольку в 64-битных операционных системах одна битовая плата может поместиться в один регистр.
Тем не менее, есть ли принципиальные различия (размер (память и код), скорость, сложность, использование памяти и т. д.) в использовании std::bitset<64>
и функций в нем или фундаментальный тип «того же» размера unsigned long long
и выполнение битового переворачивания вручную?