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++ 专用