rename (#import)
Блок, относящийся только к языку C++
Обходит проблемы конфликтов имен.
rename("OldName","NewName")
Параметры
OldName
Старое имя в библиотеке типов.NewName
Имя, используемое вместо старого имени.
Заметки
Если этот атрибут задан, компилятор заменяет все вхождения OldName в библиотеке типов предоставленным пользователем именем NewName в результирующих файлах заголовка.
Этот атрибут может использоваться, если имя в библиотеке типов совпадает с определением макроса в системных файлах заголовка. Если проблема не устранена, будут созданы различные синтаксические ошибки, например Ошибка компилятора C2059 и Ошибка компилятора C2061.
Примечание
Замена предоставляется для имени, используемого в библиотеке типов, а не для имени, используемого в открывшемся файле заголовка.
Например, предположим, что свойство MyParent существует в библиотеке типов, а макрос GetMyParent определен в файле заголовка и используется перед #import. Поскольку GetMyParent — имя по умолчанию функции-оболочки для свойства get обработки ошибок, возникает конфликт имен. Для решения проблемы используйте следующий атрибут в инструкции #import:
rename("MyParent","MyParentX")
чтобы переименовать имя MyParent в библиотеке типов. Попытка переименовать программу-оболочку GetMyParent завершится ошибкой:
rename("GetMyParent","GetMyParentX")
Это происходит потому, что имя GetMyParent может возникать только в открывшемся файле заголовка библиотеки типов.
Завершение блока, относящегося только к языку C++