เคยสงสัยมั้ยครับ ว่าเวลาเขียน Code แล้วเราจะประกาศตัวแปรที่เป็น string มันมี string กับ String ให้เลือก = ="
แถมสี Hilight ก็ต่างกันอีกต่างหาก แล้วอย่างนี้ มันจะต่างกันมั้ยนะ????
ความจริงแล้ว string กับ String คือ ตัวเดียวกันครับ ถ้าเราลองเอา Mouse ไปวางที่ทั้งสอง Keyword เราจะพบว่ามันเป็น Class เดียวกัน
string เป็นเหมือนชื่อเล่น (Alias) ของ Class String เท่านั้นเองครับ
นอกจากเจ้า string กับ String แล้ว ยังมีตัวอื่นอีกนะครับ ที่มี Alias
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
แต่ในบางกรณี ก็มี Syntax บางอย่างที่ต้องใช้ Alias นะครับ เช่น ตอนที่เราประกาศ enum ตัว Type ที่เราระบุจะต้องเป็น Alias นะครับ
public enum Foo : UInt32 {} // Invalid
public enum Bar : uint {} // Valid
ตัวที่ Hilight เป็นสีน้ำเงิน ความจริง คือ Keyword ครับ ส่วนสีเขียว คือ Class/Struct ซึ่งโดยปกติแล้วเค้าจะใช้ตัว Keyword (Alias) เป็นหลักนะครับ ^^
ใน MSDN จะเขียนไว้เลยว่า string เป็น Alias ของ String ครับ
อ้างอิง: StackOverflow
No comments:
Post a Comment