Поделиться через


deprecated (C/C++)

С помощью нерекомендуемой директивы pragma можно указать, что функция, тип или какой-либо другой идентификатор не будут поддерживаться в будущем выпуске или больше не должны использоваться.

#pragma deprecated( identifier1 [,identifier2, ...] )

Заметки

Если компилятор обнаруживает нерекомендуемый символ, он выдает C4995.

Имена макросов можно объявить нерекомендуемыми. Поместите имя макроса в кавычки; в противном случае произойдет расширение макроса.

Нерекомендуемый модификатор __declspec позволяет определить нерекомендуемое состояние для отдельных форм перегруженных функций.

Пример

// 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
}

В следующем примере показано, как объявить класс устаревшим.

// pragma_directive_deprecated2.cpp
// compile with: /W3
#pragma deprecated(X)
class X {  // C4995
public:
   void f(){}
};

int main() {
   X x;   // C4995
}

См. также

Ссылки

Директивы Pragma и ключевое слово __Pragma