Udostępnij za pośrednictwem


zmień nazwę (#import)

Charakterystyczne dla języka C++

Rozwiązuje problem z kolizją nazw.

rename("OldName","NewName")

Parametry

  • OldName
    Stara nazwa w bibliotece typów.

  • NewName
    Nazwa używana zamiast starej nazwy.

Uwagi

Jeśli atrybut ten jest określony, kompilator zamienia wszystkie wystąpienia OldName w bibliotece typów na dostarczoną przez użytkownika NewName w wynikowych plikach nagłówkowych.

Atrybut może być używany, gdy nazwa w bibliotece typów zgadza się z makro definicją w systemowych plikach nagłówkowych.Jeśli taka sytuacja nie zostanie rozwiązana, to wygenerowane zostaną różne błędy składni, takie jak Błąd kompilatora C2059 i Błąd kompilatora C2061.

[!UWAGA]

Zamieniana jest nazwa używana w bibliotece typów, a nie nazwa używana w wynikowym pliku nagłówkowym.

Na przykład, zakładając, że w bibliotece typów istnieje właściwość o nazwie MyParent, a w pliku nagłówkowym zdefiniowane jest makro GetMyParent, które jest używane przed dyrektywą #import.Ponieważ GetMyParent jest domyślną nazwą funkcji otoki dla właściwości get obsługującej błędy, nastąpi kolizja nazw.Aby obejść ten problem, użyj następującego atrybutu w instrukcji #import:

rename("MyParent","MyParentX")

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

rename("GetMyParent","GetMyParentX")

Stanie się tak dlatego, że nazwa GetMyParent występuje tylko w wynikowym pliku nagłówkowym biblioteki typów.

KONIEC określonego języka C++

Zobacz też

Informacje

Atrybuty #import (C++)

#import — dyrektywa (C++)