Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med deprecatedpragma kan du ange att en funktion, typ eller någon annan identifierare kanske inte längre stöds i en framtida version eller inte längre ska användas.
Not
Information om attributet C++14 [[deprecated]] och vägledning om när attributet ska användas i stället för Microsoft __declspec(deprecated)-modifieraren eller deprecatedpragmafinns i Attribut i C++.
Syntax
#pragma deprecated(identifierare1 [,identifierare2 ... ])
Anmärkningar
När kompilatorn stöter på en identifierare som anges av en deprecatedpragmautfärdar den kompilatorvarning C4995.
Du kan inaktuella makronamn. Placera makronamnet inom citattecken, annars sker makroexpansionen.
Eftersom deprecatedpragma fungerar på alla matchande identifierare och inte tar hänsyn till signaturer är det inte det bästa alternativet för att ta bort specifika versioner av överlagrade funktioner. Alla matchande funktionsnamn som tas med i omfånget utlöser varningen.
Vi rekommenderar att du använder attributet C++14 [[deprecated]] när det är möjligt i stället för deprecatedpragma. Den Microsoft-specifika __declspec(deprecated)-deklarationsmodifieraren är också ett bättre val i många fall än deprecatedpragma. Med [[deprecated]]-attributet och __declspec(deprecated)-modifieraren kan du ange inaktuell status för vissa former av överbelastade funktioner. Diagnostikvarningen visas bara på referenser till den specifika överlagrade funktion som attributet eller modifieraren gäller för.
Exempel
// pragma_directive_deprecated.cpp
// compile with: /W3
#include <stdio.h>
void func1(void) {
}
void func2(void) {
}
int main() {
func1();
func2();
#pragma deprecated(func1, func2)
func1(); // C4995
func2(); // C4995
}
Följande exempel visar hur du inaktuella en klass:
// pragma_directive_deprecated2.cpp
// compile with: /W3
#pragma deprecated(X)
class X { // C4995
public:
void f(){}
};
int main() {
X x; // C4995
}