DeadStores – Ausdruckswert wird nicht verwendet
Nach oben zu C++-Audits
Beschreibung
Prüft auf in Variablen gespeicherte Werte, die nie gelesen werden.
Beispielsweise ermittelt DeadStores Fälle, in denen der Ausdruckswert nicht verwendet wird. Wenn z.B. eine Variable hintereinander zwei Ausdrücken zugewiesen wird. Diese Meldung wird ausgegeben, wenn das vom Operator new erzeugte Objekt nicht verwendet wird, und die Objekterstellungsoperation keine Nebeneffekte hat.
Falsch:
void copy(List& from, List& to) {
int i = from.size();
for (i = from.size() - 1; i >= 0; i--) {
...
}
...
}
Richtig:
void copy(List& from, List& to) {
for (int i = from.size() - 1; i >= 0; i--) {
...
}
...
}