Розмір байтів для типів не надто цікавий, коли вам доводиться мати справу лише з однією мовою (і для коду, який вам не потрібно нагадувати про переповнення математики). Частина, яка стає цікавою, - це коли ви переходите між однією мовою на іншу, об'єктом C # до COM тощо, або ви робите деякий зміщення бітів або маскування, і вам потрібно нагадати про себе (і ваших кооператорів з перегляду коду) розміру даних.
На практиці я зазвичай використовую Int32 лише для того, щоб нагадати собі, якого вони розміру, тому що я пишу керований C ++ (наприклад, для переходу до C #), а також некерованого / рідного C ++.
Як ви, напевно, знаєте, у C # є 64-біт, але в нативному C ++ він закінчується як 32-бітний, або char - це unicode / 16-біт, тоді як у C ++ - 8-біт. Але як ми це знаємо? Відповідь, тому що ми розглянули це в посібнику, і він сказав так.
З часом і досвідом ви почнете бути більш добросовісними, коли ви пишете коди, щоб переходити між C # та іншими мовами (деякі читачі тут думають "навіщо вам?"), Але ІМХО я вважаю, що це краща практика, оскільки Я не можу згадати, що я кодував минулого тижня (або мені не потрібно вказувати в документі API, що "цей параметр є цілим числом 32 біт").
У F # (хоча я ніколи його не використовував) вони визначають int , int32 та nativeint . Слід поставити те саме питання, "яким я користуюся?". Як зазначали інші, у більшості випадків це не має значення (має бути прозорим). Але я для одного вибрав би int32 та uint32 лише для усунення неясностей.
Я думаю, це просто залежало б від того, які програми ви кодуєте, хто їх використовує, яке кодування практикує ви та ваша команда та ін., Щоб обґрунтувати, коли використовувати Int32.