[英]c++ bool While on vector
我是C ++的新手,所以這可能是平常的事情。
我有一個std::vector<int> v;
我想看看此向量中是否為0。 我認為這是可行的:
bool l = true;
i = 0;
while((l = true) && (i<v.size()))
{
if (v[i] == 0) l = false;
++i;
}
但是即使我的向量是1,2,3,0,2,0,這個l
仍然true
。 為什么? 我該如何解決?
while((l = true) && (i<v.size()))
實際上是一項任務。 您應該編寫更安全的比較代碼
while((true == l) && (i<v.size())
請注意,在這種情況下,如果您不小心鍵入=
而不是==
,則會出現編譯錯誤而不是代碼損壞。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.