DeadStores – Ausdruckswert wird nicht verwendet

Aus RAD Studio
Wechseln zu: Navigation, Suche

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--) {
     ...
   }
   ...
 }

Siehe auch