[解決済み] 符号なしint型はなぜCLSに準拠しないのですか?
質問
符号なし整数はなぜCLSに準拠しないのですか?
型指定はパフォーマンスのためだけで、正しさのためではないのではと思い始めています。
どのように解決するのですか?
すべての言語が符号なし int の概念を持っているわけではありません。たとえば、VB 6 には符号なし int の概念がなかったため、VB7/7.1 の設計者は同様に実装しないことを決定したのだと思います (現在は VB8 で実装されています)。
引用すると
http://msdn.microsoft.com/en-us/library/12a7a7h3.aspx
CLS は、開発者が一般的に必要とする言語構造を含むのに十分な大きさに設計されています。 CLSは、開発者が一般的に必要とする言語構造を含むのに十分な大きさでありながら、ほとんどの言語がサポートできるほど小さく設計されています。 ほとんどの言語がサポートできるように設計されています。また、どのような言語 コードの型安全性を迅速に検証することを不可能にする言語構成はCLSから除外されました。 CLSに準拠した言語が検証可能なコードを作成できるように、コードの型安全性を迅速に検証できない言語構成はCLSから除外されています。 検証可能なコードを作成することができるように、CLS に準拠したすべての言語がそうすることを選択できるようにしました。
更新: 何年か前にこのことについて考えたことがあります。UInt が型安全性を検証できない理由はわかりませんが、CLS の担当者は、サポートされる値の型の最小数の基準について、どこかでカットオフポイントを持たなければならなかったのでしょう。また、より多くの言語が CLR に移植されるようになる長期的なことを考えると、まったく概念がないのであれば、CLS に準拠するために符号なし int の実装を強制する必要はないのではないでしょうか。
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み] [Solved] アセンブリ System.Web.Extensions dll はどこにありますか?
-
[解決済み] 2つのリストを結合する
-
[解決済み】IntPtrとは一体何なのか?
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] C#がforeachで変数を再利用するのは理由があるのか?
-
[解決済み] Try-catchは私のコードをスピードアップさせるか?
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] 特定のプロパティに対するLINQのDistinct()
-
[解決済み】大文字・小文字を区別しない「Contains(string)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C#におけるtypedefの等価性
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
[解決済み】パディングが無効で、削除できない?
-
[解決済み】バックスラッシュを含むパス文字列のエスケープシーケンスが認識されない件
-
[解決済み】リソースの読み込みに失敗した:ステータス500(内部サーバーエラー)のサーバーの応答)
-
[解決済み】Moqを使用してメソッド呼び出しを検証する
-
[解決済み】C#のequal to演算子でtextとvarcharのデータ型は互換性がない
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】別のスレッドがこのオブジェクトを所有しているため、呼び出し側のスレッドはこのオブジェクトにアクセスできない
-
[解決済み] なぜCLSに準拠したコードを書かなければならないのですか?