Software Design

Design de software em C, C++, Java, etc…

C++: Marcando funções como obsoletas ( deprecated )

Não existe um recurso no padrão que defina uma forma para tornar uma função obsoleta, por isso cada compilador tem uma sintaxe diferente. No caso do g++ a sintaxe é a seguinte:

int sum(int, int) __attribute__ ((deprecated));

Ou seja, basta adicionar o “__attribute__ ((deprecated))” no final da declaração da função para marcá-la como obsoleta.

Para que o código seja portável, o ideal é criar um define. Algo do tipo:

#define DEPRECATED(F) F __attribute__ ((deprecated))
///....
///....
///....
DEPRECATED(int sum(int, int));

Dessa forma é possível modificar a definição de DEPRECATED quando for portar o código para outro compilador.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Informação

Publicado em novembro 20, 2013 por em C++, Linux, Unix.
%d blogueiros gostam disto: