重複の可能性:
C# の Bool 型と Boolean 型の違いは何ですか?
私は最近、Web アプリケーションの C# プログラミングを多く行っています。私のチームは、基本型と複合型のどちらを使用するかについてまだ決定していません。
さまざまなタイプの利点は何ですか?
フェクス:
Object vs object
Boolean vs bool
等々...
ありがとう!
重複の可能性:
C# の Bool 型と Boolean 型の違いは何ですか?
私は最近、Web アプリケーションの C# プログラミングを多く行っています。私のチームは、基本型と複合型のどちらを使用するかについてまだ決定していません。
さまざまなタイプの利点は何ですか?
フェクス:
Object vs object
Boolean vs bool
等々...
ありがとう!
違いはありません -bool
は のエイリアスでBoolean
あり、object
は のエイリアスですObject
。ただし、慣用的な C# では、、、などを使用する必要がobject
ありbool
ますint
。
デフォルトでは、StyleCop はこの方法を強制することに注意してください。関連する規則はSA1121です。
もちろん、ルールが有効かどうかについてはさまざまな意見があります。この SO の質問を読むことをお勧めします: C# - StyleCop - SA1121: UseBuiltInTypeAlias - Readability Rules。
c#:「System.Object」と「オブジェクト」の違い
ジョン・スキート:
string は global::System.String のエイリアスです。それは単なるシンタックスシュガーです。この 2 つは完全に互換性があり、コンパイルされたコードに違いはありません。
個人的には、変数名などにエイリアスを使用しますが、API の名前には CLR 型名を使用します。次に例を示します。
public int ReadInt32() // Good, language-neutral public int ReadInt() // Bad, assumes C# meaning of "int"
(戻り値の型は実際には名前ではないことに注意してください。メタデータで型としてエンコードされているため、混乱することはありません。)
object === System.Object
string === System.String
bool === System.Boolean
byte === System.Byte
sbyte === System.SByte
short === System.Int16
ushort === System.UInt16
int === System.Int32
uint === System.UInt32
long === System.Int64
ulong === System.UInt64
float === System.Single
double === System.Double
decimal === System.Decimal
char === System.Char