【问题标题】:Best Practice Regarding Types When Programming Windows?Windows 编程时关于类型的最佳实践?
【发布时间】:2011-09-24 13:25:10
【问题描述】:

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

【问题讨论】:

    标签: c winapi


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

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

        显然,如果使用 MFC/COM+,这比只进行少量 WinAPI 调用的(便携式)控制台应用程序更相关。 (WinAPI 调用仍应使用“windows 类型”,IMOHO。无论如何它们已经包含在内。)

        编码愉快。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-04-04
          • 2010-12-01
          • 1970-01-01
          • 2011-06-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多