C#では、DateTime
プロパティMonth
のタイプはint
(32ビットの符号付き整数)ですが、その範囲は1〜12のみです。C#チームが(8ビットの符号なし整数)int
などの小さい数値型を選択した理由は何byte
ですか?
5
C#設計チームの誰かが潜んでいない限り、これに対する答えが得られるかどうかは
—
わかり
@Liathそれは私が恐れているのを助けません、公式の答えを持つことができるかどうか、言語仕様で「なぜ」が「主意見ベース」と見なされるのかを尋ねていますか?(ちなみに、C#言語デザイナーからの説明)
—
gnat
ところで
—
アモン
DateTime
としてCoreFXに実装単一の64ビット値として時間をコードします。日や月などの情報は、その値から巧妙な数学(GetDatePart()
)を介して抽出されます。これはintを戻り値として使用する理由ではなく、欠点はありません。アラインメントの問題のため、関数からバイトを返すことは、intを返すことよりも効率的ではないことにも注意してください。
それがと呼ばれる型ではない理由を尋ねたくなるでしょう
—
bdsl 2018
Month
。
おそらくそれは、内部で実行される操作がintを必要としたためであり、コンパイラの設計者は、おそらくパフォーマンス上の理由から、それを別のものに変換する価値がないと判断しました。
—
NoChance 2018年