Разница между DWORD и DWORD32

В соответствии с Тип данных Windows, DWORD и DWORD32 являются 32-разрядным целым числом без знака, кроме IntSafe.h, а другой определяется в BaseTsd.h. В чем разница или, может быть, преимущество в использовании одного над другим?

0

Решение

API Windows полны десятилетий C #define а также typedef мусор.

То, на что вы смотрите, это часть этого мусора. Может быть, в какой-то момент они подумали о DWORD что масштабируется в размерах, в то время как DWORD32 не будет.

Но эта надежда давно умерла. Это почти наверняка идентичные типы, и почти наверняка никогда не станут неидентичными.

Если вы используете что-то под названием DWORD16 а также DWORD64 по какой-то причине, имя DWORD32 вписывается, или если вы по какой-то другой причине действительно хотите подчеркнуть количество бит в вашем DWORD32 тип, этот тип может быть лучшей идеей. В противном случае выберите один, используйте его и игнорируйте другой.

2

Другие решения

Они одинаковые. DWORD поддерживается для обратной совместимости с унаследованным десятилетием кода и всегда является 32-битным. DWORD32 тот же тип данных и просто явно указывает, что это 32-битный. DWORD32 был введен одновременно с DWORD64 а также DWORD_PTR были введены, когда API обновлялся для поддержки 64-битной разработки.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector