Wie verwende ich ein reserviertes C # -Schlüsselwort als Eigenschaftsnamen ohne das Präfix @?

7

Ich muss eine Klasse entwerfen, in der ein Eigenschaftsname return sein muss, aber wenn ich einen Eigenschaftsnamen wie return erstelle, erhalte ich einen Fehler.

Nach einigen Recherchen fand ich heraus, dass man ein reserviertes Schlüsselwort als Eigenschafts- oder Variablennamen verwenden kann, indem man ein @ Präfix in C # hinzufügt oder es in eckige Klammern [] in VB.NET einfügt. Zum Beispiel:

%Vor%

Also hier ist mein Klassen-Design-Code.

%Vor%

Jetzt bekomme ich keinen Fehler, aber wenn ich versuche, auf den Eigenschaftennamen wie return zuzugreifen, muss ich den Namen wie @return schreiben, was ich nicht will. Ich möchte auf den Namen der Eigenschaft wie p.return = "hello"; anstelle von p.@return = "hello"; zugreifen, also würde ich gerne wissen, ob es eine Möglichkeit gibt, das zu tun?

    
Thomas 06.06.2012, 10:43
quelle

3 Antworten

25

Sie können nicht. Es ist ein reserviertes Schlüsselwort . Das bedeutet "du kannst nicht". Im Gegensatz zu "kontextbezogenen Schlüsselwörtern", was normalerweise bedeutet "wir haben das später hinzugefügt, also mussten wir es in einigen bereits existierenden Szenarien verwenden".

Die moderate Antwort lautet: Verwenden Sie @return .

Eine bessere Antwort hier ist: Benennen Sie Ihre Eigenschaft um. Vielleicht ReturnValue .

Es gibt auch die Option, sagen wir, Return - aber Sie müssen vielleicht auch über die Groß- / Kleinschreibung der Sprache nachdenken.

    
Marc Gravell 06.06.2012, 10:46
quelle
0

Sie können Namensräume wie folgt umbenennen:

%Vor%     
Author PraWin 01.02.2018 13:26
quelle
-2

Keine Möglichkeit, dies zu erreichen, da reservierte Schlüsselwörter vordefinierte, reservierte Bezeichner sind, die für den Compiler eine besondere Bedeutung haben.

es ist besser, Sie ändern den Namen der Eigenschaft und verwenden Sie es in Ihrem Code ... etwas wie in @Marc Antwort ...

angegeben     
Pranay Rana 06.06.2012 10:48
quelle

Tags und Links