rinomina attributo import
Specifiche di C++
Risolve i problemi di conflitto di nomi.
Sintassi
#import ridenominazione della libreria dei tipi( "OldName" , "NewName" )
Parametri
OldName
Nome precedente nella libreria di tipi.
NewName
Nome da utilizzare al posto del nome precedente.
Osservazioni:
Quando si specifica l'attributo rename, il compilatore sostituisce tutte le occorrenze di OldName nella libreria dei tipi con newName fornito dall'utente nei file di intestazione risultanti.
L'attributo rename può essere usato quando un nome nella libreria dei tipi coincide con una definizione di macro nei file di intestazione di sistema. Se questa situazione non viene risolta, il compilatore potrebbe generare diversi errori di sintassi, ad esempio Errore del compilatore C2059 e Errore del compilatore C2061.
Nota
La sostituzione riguarda un nome utilizzato nella libreria di tipi, non un nome utilizzato nel file di intestazione risultante.
Ad esempio, si supponga che una proprietà denominata MyParent
esiste in una libreria di tipi e che una macro GetMyParent
è definita in un file di intestazione e viene utilizzata prima di #import
. Poiché GetMyParent
è il nome predefinito di una funzione wrapper per la proprietà di gestione degli get
errori, si verificherà un conflitto di nomi. Per ovviare al problema, utilizzare il seguente attributo nell'istruzione #import
:
#import MyTypeLib.tlb rename("MyParent","MyParentX")
il quale rinomina il nome MyParent
nella libreria di tipi. Il tentativo di rinominare il nome del wrapper GetMyParent
non riuscirà:
#import MyTypeLib.tlb rename("GetMyParent","GetMyParentX")
Perché il nome GetMyParent
si verifica solo nel file di intestazione della libreria dei tipi risultante.
END C++ specifico