Kích thước byte cho các loại không quá thú vị khi bạn chỉ phải xử lý một ngôn ngữ duy nhất (và đối với mã mà bạn không phải tự nhắc nhở về việc tràn toán học). Phần trở nên thú vị là khi bạn kết nối giữa ngôn ngữ này với ngôn ngữ khác, đối tượng C # sang COM, v.v. hoặc bạn đang thực hiện một số thay đổi hoặc che giấu và bạn cần phải tự nhắc nhở mình (và những người đồng kiểm tra mã của bạn) kích thước của dữ liệu
Trong thực tế, tôi thường sử dụng Int32 chỉ để nhắc nhở bản thân kích thước của chúng vì tôi viết C ++ được quản lý (để chuyển sang C # chẳng hạn) cũng như C ++ không được quản lý / bản địa.
Miễn là bạn có thể biết, trong C # là 64 bit, nhưng trong C ++ bản địa, nó kết thúc là 32 bit hoặc char là unicode / 16 bit trong khi ở C ++ là 8 bit. Nhưng làm thế nào để chúng ta biết điều này? Câu trả lời là bởi vì chúng tôi đã tra cứu nó trong hướng dẫn và nó đã nói như vậy.
Với thời gian và kinh nghiệm, bạn sẽ bắt đầu có ý thức hơn khi bạn viết mã để kết nối giữa C # và các ngôn ngữ khác (một số độc giả ở đây đang nghĩ "tại sao bạn?"), Nhưng IMHO tôi tin rằng đó là một cách thực hành tốt hơn bởi vì Tôi không thể nhớ những gì tôi đã mã hóa tuần trước (hoặc tôi không phải chỉ định trong tài liệu API của mình rằng "tham số này là số nguyên 32 bit").
Trong F # (mặc dù tôi chưa bao giờ sử dụng nó), họ định nghĩa int , int32 và bản gốc . Câu hỏi tương tự sẽ xuất hiện, "tôi sử dụng cái nào?". Như những người khác đã đề cập, trong hầu hết các trường hợp, nó không thành vấn đề (nên minh bạch). Nhưng tôi cho một người sẽ chọn int32 và uint32 chỉ để loại bỏ sự mơ hồ.
Tôi đoán nó sẽ chỉ phụ thuộc vào những ứng dụng bạn đang mã hóa, ai đang sử dụng nó, những gì bạn thực hành mã hóa và nhóm của bạn tuân theo, v.v. để biện minh khi nào nên sử dụng Int32.