gpt4 book ai didi

c++ - 为什么在 C++ 中我们使用 DWORD 而不是 unsigned int?

转载 作者:IT老高 更新时间:2023-10-28 11:51:09 28 4
gpt4 key购买 nike

我不怕承认我是一个 C++ 新手,所以这似乎是一个愚蠢的问题,但是......

我看到代码示例中到处都使用了 DWORD。当我查看 DWORD 的真正含义时,它显然只是一个无符号整数(0 到 4,294,967,295)。所以我的问题是,为什么我们有 DWORD?整数类型“unsigned int”没有给我们什么?是否与便携性和机器差异有关?

最佳答案

DWORD不是 C++ 类型,它在 <windows.h> 中定义.

原因是DWORD具有 Windows 函数所依赖的特定范围和格式,因此如果您需要该特定范围,请使用该类型。 (或者就像他们说的“在罗马时,像罗马人那样做。”)对你来说,这恰好对应于 unsigned int ,但情况可能并非总是如此。为了安全起见,请使用 DWORD当一个 DWORD是预期的,不管它实际上是什么。

例如,如果他们更改了 unsigned int 的范围或格式他们可以使用不同的类型来支持 DWORD保持相同的要求,所有代码使用 DWORD将是不明智的。 (同样,他们可以决定 DWORD 需要为 unsigned long long ,更改它,所有使用 DWORD 的代码都将不明智。)


另请注意 unsigned int not 是否必须在 0 到 4,294,967,295 之间。见 here .

关于c++ - 为什么在 C++ 中我们使用 DWORD 而不是 unsigned int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2995251/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com