Dalam C #, DateTime
properti Month
memiliki tipe int
(integer bertanda 32 bit) namun jangkauannya hanya 1-12. Apa alasan tim C # memilih int
lebih dari tipe numerik yang lebih kecil seperti byte
(bilangan bulat 8 bit yang tidak ditandatangani)?
DateTime
seperti yang diterapkan dalam CoreFX mengkode waktu sebagai nilai 64 bit tunggal. Informasi seperti hari atau bulan diekstraksi dari nilai itu melalui beberapa matematika pintar ( GetDatePart()
). Ini bukan alasan untuk menggunakan int sebagai nilai balik, itu hanya tidak memiliki kekurangan . Perhatikan juga bahwa karena masalah pelurusan, mengembalikan byte dari suatu fungsi tidak akan lebih efisien daripada mengembalikan int.
Month
.