2010-04-06 3 views
8

Ich möchteWie Schlüsselworte in C# zu entkommen?

das Äquivalent der folgenden VB in C# tun
Function([class]) "hello" 

Diese würde das gleiche in C#, da dies sein

class=>"hello" 

Das Problem ist, dass das Wort class ein Schlüsselwort ist in der Sprache. Aber ich möchte es als Variablennamen verwenden. Im VB-Beispiel können Sie die []-Klammern verwenden, um dieses Schlüsselwort zu "entkommen" und es als Variablennamen verwenden zu lassen.

Gibt es eine Möglichkeit, dies in C# zu tun?

Antwort

24

Sie müssen @ Variablennamen hinzuzufügen:

@class

Aber es ist eine sehr schlechte Praxis. Jedes Mal, wenn Sie Ihre Variable als Schlüsselwort benennen, stirbt ein Kätzchen :)

+5

Diese pooooooor Kätzchen! – Randolpho

+3

+1 für Ermahnung. –

+1

@Andrew Bezzub, ich kann sehen, wie es als schlechte Praxis angesehen werden kann. Aber ich brauche es für ein sehr spezielles Szenario, das viel zu lange braucht, um die Details hier zu erklären. Nachdem ich das gesagt habe, würde ich gerne Ihre Gedanken darüber hören, warum *** Sie denken, das ist eine schlechte Übung. – 7wp

7

Verwenden @ für reservierte Worte:

@class=>"hello" 
4

Sie können jedem Schlüsselwort einen Präfix @ voranstellen.

Aber ich denke nicht, dass es eine empfohlene Praxis ist, und Code-Analyse beklagt sich sicher.