Compartilhar via


rename (#import)

Específico do C++

Funciona em torno de problemas de colisão de nomes.

rename("OldName","NewName")

Parâmetros

  • OldName
    Nome antigo na biblioteca de tipos.

  • NewName
    Nome a ser usado em vez do nome antigo.

Comentários

Se este atributo for especificado, o compilador substitui todas as ocorrências do OldName em uma biblioteca de tipos com fornecido pelo usuário NewName nos arquivos de cabeçalho resultante.

Esse atributo pode ser usado quando um nome na biblioteca de tipos coincide com uma definição de macro em arquivos de cabeçalho do sistema.Se essa situação não for resolvida, vários erros de sintaxe serão gerados, como C2059 de erro do compilador e C2061 de erro do compilador.

ObservaçãoObservação

A substituição é um nome usado na biblioteca de tipos, não um nome usado no arquivo de cabeçalho resultante.

Por exemplo, suponha que uma propriedade chamada MyParent existe em uma biblioteca de tipos e uma macro GetMyParent é definido em um arquivo de cabeçalho e usado antes de #import.Uma vez que GetMyParent é o nome padrão de uma função de wrapper para o tratamento de erros obter propriedade, ocorre uma colisão de nomes.Para contornar o problema, use o seguinte atributo na #import instrução:

rename("MyParent","MyParentX")

que renomeia o nome MyParent na biblioteca de tipos.Uma tentativa de renomear o GetMyParent nome wrapper falhará:

rename("GetMyParent","GetMyParentX")

Isso ocorre porque o nome GetMyParent ocorre apenas no arquivo de cabeçalho de biblioteca tipo resultante.

FINAL específico do C++

Consulte também

Referência

# Import atributos (C++)

# Import diretiva (C++)