Windows编程时关于类型的最佳实践?

时间:2011-09-24 03:26:36

标签: c winapi

我目前正在使用Petzold的书作为资源通过Win32 API学习Windows编程,我想知道是否应该使用API​​中定义的类型而不是标准C类型(即char而不是CHAR,DWORD而不是无符号长)。我知道这主要是为了向后兼容,但现在使用它们有什么好处吗?

3 个答案:

答案 0 :(得分:2)

使用Windows类型,尤其是返回值。您更有可能以这种方式编写可移植代码(即以32位和64位版本工作)。

答案 1 :(得分:2)

我只会在直接与Windows API接口的代码中使用Windows类型,即便如此,只有在您使用的类型很重要时 - 比如需要将指向该类型的指针传递给API函数,或者对于像手柄这样的半透明类型。不要开始使用INTDWORD作为循环计数器变量编写for循环...

当然我可能有偏见......; - )

答案 2 :(得分:1)

When in rome...是的。它使您的代码“适合”特定的环境。

显然,如果使用MFC / COM +比仅仅进行几次WinAPI调用的(便携式)控制台应用程序更有意义。 (WinAPI调用应该仍然使用“windows类型”,IMOHO。无论如何它们已经包含在内。)

快乐的编码。