Freigeben über


Warnung C6504

Ungültige Anmerkung: Eigenschaft kann nur für Werte von Zeiger, Zeiger-zu-Element oder Arraytyp verwendet werden.

Diese Warnung gibt die Verwendung einer zeigerspezifischen SAL-Anmerkung für einen Datentyp ohne Zeiger an.

Hinweise

Weitere Informationen dazu, welche Datentypen von Eigenschaften unterstützt werden, finden Sie unter Anmerkungseigenschaften.

Codeanalysename: NULL_ON_NON_POINTER

Beispiel

Der folgende Code generiert warnung C6504. Dieses Problem ergibt sich aus der Verwendung des zeigerspezifischen und _Notnull_ referenzbezogenen _Maybenull_ Verweisespt.

class Point
{
    public:
        //  members
};

void f(_Pre_ _Maybenull_ Point& pt)
{
    // code ...
}

void g(_Pre_ _Notnull_ Point& pt)
{
    // code ...
}

Um diese Warnung zu korrigieren, entfernen Sie die Anmerkung, wenn sie nicht sinnvoll ist. Sie können auch zu einer Anmerkung wechseln, die auf den verwendeten Typ anwendbar ist, oder den Typ so ändern, dass er mit der Anmerkung übereinstimmt. Der folgende Code korrigiert diese Warnung, indem die erste Instanz eines pt Zeigers geändert und die zweite Anmerkung entfernt wird, um dem Verweistyp zu entsprechen.

class Point
{
    public:
        //  members
};

void f(_Pre_ _Maybenull_  Point* pt)
{
    // code ...
}

void g(Point& pt)
{
    // code ...
}

Weitere Informationen

Anmerkungseigenschaften