Mengapa Sesetengah Jenis Kurang Pengubah Suai Literal
Dalam C#, jenis integral seperti long int mempunyai pengubah literal, manakala yang lain seperti short int tidak. Perbezaan ini menimbulkan persoalan mengapa jenis tertentu mempunyai ciri ini dan bukan yang lain.
Prinsip di sebalik reka bentuk C# ialah ciri tidak hadir secara lalai dan mesti dibenarkan oleh faedahnya. Dalam kes pengubah suai literal, faedahnya digunakan pada jenis seperti jenis panjang dan tidak bertanda kerana ini membolehkan spesifikasi tepat saiz integer atau tanda yang dimaksudkan.
Justifikasi untuk Pengubah suai pada Jenis panjang dan Tidak Bertanda
Sebahagian besar pengiraan integer melibatkan integer bertanda 32-bit, yang cekap dikendalikan oleh perkakasan. C# lalai kepada perwakilan ini. Walau bagaimanapun, untuk pengiraan yang memerlukan julat yang lebih besar, integer panjang digunakan dan pengubah suai membenarkan penunjuk yang jelas tentang saiz yang dimaksudkan ini.
Selain itu, senario interop dan manipulasi medan bit memerlukan penentuan integer yang tidak ditandatangani. Sekali lagi, pengubah suai menyediakan kaedah ringkas untuk menunjukkan tanda yang dimaksudkan atau kekurangannya.
Kekurangan Justifikasi untuk Pengubah suai secara singkat
Sebaliknya, integer pendek tidak memerlukan pengubah suai kerana:
Faedah pengubah suai tidak meliputi jenis pendek. Memandangkan aritmetik tidak dilakukan dalam pendek dan literal sudah boleh digunakan dengan seluar pendek, tiada justifikasi yang menarik untuk memperkenalkan pengubah suai pendek.
Atas ialah kandungan terperinci Mengapa Nombor Bulat `pendek` Tidak Mempunyai Pengubah Suai Tersurat dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!