Warum erlaubt C # .Net die Deklaration des Zeichenfolgenobjekts ohne Berücksichtigung der Groß- und Kleinschreibung?
%Vor%Sowohl der Klein- als auch der Großbuchstabe S des Wortes String sind akzeptabel und dies scheint das einzige Objekt zu sein, das dies erlaubt.
Kann jemand erklären, warum?
string
ist ein Sprachschlüsselwort, während System.String
der Typ ist, für den es Aliase ist.
Beide kompilieren zu genau der gleichen Sache, ähnlich:
int
ist System.Int32
long
ist System.Int64
float
ist System.Single
double
ist System.Double
char
ist System.Char
byte
ist System.Byte
short
ist System.Int16
ushort
ist System.UInt16
uint
ist System.UInt32
ulong
ist System.UInt64
Ich denke, dass es in den meisten Fällen um die Lesbarkeit von Codes geht - alle grundlegenden Systemwerttypen haben Aliase, ich denke, der Kleinbuchstabe string
könnte nur für Konsistenz stehen.
Zusätzlich zu den anderen Antworten ist es eine gute Methode, Schlüsselwörter zu verwenden, wenn sie existieren.
z. Sie sollten string anstatt System.String verwenden.
"String" ist der Name der Klasse. "string" ist ein Schlüsselwort, das diese Klasse abbildet.
es ist das gleiche wie
... und so weiter ...
string ist ein Alias für System.String. Sie sind das Gleiche.
Konventionell werden Objekte des Typs (System.String) jedoch allgemein als Alias bezeichnet - z. B.
%Vor%während Operationen in der Klasse die Großbuchstabenversion verwenden z.B.
%Vor%Ich benutze String und nicht String, Int32 statt int, so dass meine Syntaxhervorhebung eine Zeichenkette als Typ und nicht als Schlüsselwort aufnimmt. Ich möchte, dass Schlüsselwörter auf mich springen.