Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Übergeben Sie keinen Zeiger, der als Parameter an eine Funktion ungültig (Dangling) sein kann.
void use(int*);
void ex1()
{
int* px;
{
int x;
px = &x;
}
use(px); // px is a dangling pointer
}
Hinweise
Die Richtlinien für lebensdauer aus den C++-Kernrichtlinien enthalten einen Vertrag, dem Code folgen kann, der eine gründlichere statische Speicherlecks- und Dangling-Zeigererkennung ermöglicht. Die grundlegenden Ideen hinter den Richtlinien sind:
- Leiten Sie niemals einen ungültigen (Dangling) oder einen bekannten Nullzeiger ab.
- Gibt niemals einen Zeiger aus einer Funktion zurück (formaler Rückgabe- oder Ausgabeparameter).
- Übergeben Sie niemals einen ungültigen Zeiger (Dangling) an eine beliebige Funktion.
Name der Codeanalyse: LIFETIMES_FUNCTION_PRECONDITION_VIOLATION