Udostępnij za pośrednictwem


rename (#import)

Szczególne C++

Program Works wokół problemów kolizji nazw.

rename("OldName","NewName")

Parametry

  • OldName
    Stara nazwa w bibliotece typów.

  • NewName
    Nazwa ma być używany zamiast starą nazwę.

Uwagi

Jeśli ten atrybut jest określony, kompilator zamienia wszystkie wystąpienia StaraNazwa w bibliotece typów, z dostarczonych użytkownika NowaNazwa w plikach nagłówkowych wynikowy.

Ten atrybut może używany, gdy nazwa biblioteki typu zbiega się z definicji makra w plikach nagłówkowych systemu.Jeśli sytuacja ta nie zostanie rozwiązany, a następnie różne błędy składni zostanie wygenerowany, takich jak C2059 błąd kompilatora i C2061 błąd kompilatora.

[!UWAGA]

Zastąpienie dotyczy nazwy używane w bibliotece typów, nie dla nazwy używane w wynikowym pliku nagłówka.

Załóżmy na przykład, właściwość o nazwie MyParent istnieje w bibliotece typów, a makra GetMyParent jest zdefiniowany w pliku nagłówka i stosowane przed #import.Ponieważ GetMyParent jest domyślna nazwa funkcji otoki do obsługi błędów uzyskać właściwość, nastąpi kolizji nazw.Aby obejść ten problem, należy użyć następującego atrybutu w #import instrukcji:

rename("MyParent","MyParentX")

które zmienia nazwę MyParent w bibliotece typów.Próba zmiany nazwy GetMyParent nazwa otoki zakończy się niepowodzeniem:

rename("GetMyParent","GetMyParentX")

Wynika to z nazwą GetMyParent występuje tylko w wynikowym pliku nagłówka biblioteki typów.

KONIEC C++ szczególne

Zobacz też

Informacje

#Import atrybuty (C++)

#Import dyrektywy (C++)