Freigeben über


rename (#import)

C++-spezifisch

Umgeht Probleme mit Namenskonflikten.

rename("OldName","NewName")

Parameter

  • OldName
    Alter Name in der Typbibliothek.

  • NewName
    Name, der anstelle des alten Namens verwendet werden soll.

Hinweise

Wenn dieses Attribut angegeben wird, ersetzt der Compiler alle Vorkommen von OldName in einer Typbibliothek durch den vom Benutzer bereitgestellten NewName in den resultierenden Headerdateien.

Dieses Attribut kann verwendet werden, wenn ein Name in der Typbibliothek einer Makrodefinition in den Systemheaderdateien entspricht. Wenn diese Situation nicht aufgelöst wird, werden unterschiedliche Syntaxfehler wie Compilerfehler C2059 und Compilerfehler C2061 generiert.

Hinweis

Die Ersetzung erfolgt für einen in der Typbibliothek verwendeten, nicht für einen in der resultierenden Headerdatei verwendeten Namen.

Angenommen, eine Eigenschaft mit dem Namen MyParent ist in einer Typbibliothek vorhanden und das Makro GetMyParent wird in einer Headerdatei definiert und vor #import verwendet. Da GetMyParent der Standardname einer Wrapperfunktion für die Fehlerbehandlungseigenschaft get ist, tritt ein Namenskonflikt auf. Um das Problem zu umgehen, verwenden Sie das folgende Attribut in der #import-Anweisung:

rename("MyParent","MyParentX")

das den Namen MyParent in der Typbibliothek umbenennt. Bei dem Versuch, den Wrappernamen GetMyParent umzubenennen, tritt ein Fehler auf:

rename("GetMyParent","GetMyParentX")

Dies ist darauf zurückzuführen, dass der Name GetMyParent nur in der resultierenden Typbibliotheksheaderdatei auftritt.

Ende C++-spezifisch

Siehe auch

Referenz

#import-Attribute (C++)

#import-Direktive (C++)