[英]check if multiple bits are set with std::bitset<8>
檢查是否使用 bitset<8> 設置了多個位的最佳方法是什么? 例如與 uint8_t 變量的 & 操作? (bitsetvariable & flag) == 0
或者是這樣的可能bitsetvariable.test(std::bitset<8>(flag))
?
位集bitset
有一個to_ulong
成員 function可以將位轉換為unsigned long
。
if (bitsetvariable.to_ulong() == flag)
最好的解決方案是使用all/any/none
; 檢查cppreference !
如果您需要驗證特定ID ,解決方案是使用test
( doc )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.