Ich bin neu in C++, also ist das vielleicht etwas üblich.C++ bool Während auf Vektor
Ich habe ein std::vector<int> v;
Und ich will sehen, ob 0 in diesem Vektor ist. Ich denke, das funktioniert:
bool l = true;
i = 0;
while((l = true) && (i<v.size()))
{
if (v[i] == 0) l = false;
++i;
}
Aber selbst wenn mein Vektor 1,2,3,0,2,0 diese l
ist true
bleibt. Warum? Wie kann ich das beheben?
Sie sollten keines von beiden tun. Schreiben Sie einfach 'while (l && ...)' statt explizit mit 'true' zu vergleichen. – interjay
Eigentlich gibt es überhaupt keine Notwendigkeit in "l", Schreiben 'if (0 == v [i]) {break;}' würde das Ding tun. Aber ich möchte auf den sicheren Vergleich mit der Konstante hinweisen. – VTT
@VTT: Ew, Yoda. Es ist nicht der 4. Mai mehr! –