我阅读了关于CreateWindowEx
CreateWindowExA
CreateWindowExW
的文档,它们似乎都是相同的。
如果没有区别,为什么它们都会存在?
发布于 2022-05-13 19:10:59
首先,CreateWindowEx
是一个宏,它根据是否定义了CreateWindowExA
或CreateWindowExW
来扩展到UNICODE
。许多WinAPI函数都是这样工作的:它们有一个宏,它在基于UNICODE
的适当函数之间切换,然后有A
和W
版本。
现在,与A
和W
版本的区别相当简单。
"A“版本处理基于Windows代码页的文本,而"W”版本处理Unicode文本。
-资料来源:https://learn.microsoft.com/en-us/windows/win32/intl/code-pages
H头将CreateWindowEx定义为别名,它根据Unicode预处理器常量的定义自动选择此函数的ANSI或UNICODE版本。将编码中性别名的使用与非编码中性的代码混合使用可能会导致不匹配导致编译或运行时错误。有关更多信息,请参见功能原型的约定。
https://stackoverflow.com/questions/72234300
复制相似问题