什麼我以前是1和0的字符串,我可以簡單地檢查一些範圍是否等於一個序列,我想:檢查布爾變量(範圍)的矢量等於1序列和0
if (myString.substr(0, 4) == "1110") ...
出於記憶的原因,我將這個字符串變成了vector<bool>
,因爲vector中的一個bool只需要1位而不是1個字節。
現在,這是一個問題。我想和substr
做同樣的比較。也許沒有類似的東西:
if(myVector[0] == true && myVector[1] == true && ...)
或
vector<bool> tmpVector;
tmpVector.push_back(true);
tmpVector.push_back(true);
...
if (myVector == tmpVector) ...
有沒有更優雅的解決方案呢?
bool是一個單字節嗎?我見過的大多數布爾類型都是帶符號的16位整數。 – Mauren
TIL'std :: vector'由一系列位支持:) http://www.cplusplus.com/reference/vector/vector-bool/ –
@DrewNoakes我很高興我的問題並非絕對無用。 :) – Saraph