C#禁用关键字功能

时间:2015-09-09 08:50:39

标签: c# enums keyword

C#中是否有办法在代码中禁用关键字的功能?在我的情况下,我想将我的一个枚举项定义为 float ,这显然使Visual Studio有点混淆:)

public enum ValidationType
{
    email,
    number,
    float,
    range
}

4 个答案:

答案 0 :(得分:7)

从技术上讲,你可以这样做:

public enum ValidationType
{
    email,
    number,
    @float, // note "@" before "float"
    range
}

然而,即使它可能使用关键词作为序数标识符,它也不是良好做法 。在您的情况下,可能更好的解决方案是大写

public enum ValidationType
{
    Email,
    Number,
    Float, 
    Range
}

答案 1 :(得分:6)

没有。 Keywords是预定义的保留标识符,对编译器具有特殊含义。它们不能用作程序中的标识符,除非它们包含@作为前缀。

例如:

  • @if是有效的标识符,但
  • if不是因为if是关键字。

https://msdn.microsoft.com/en-us/library/x53a06bb.aspx

答案 2 :(得分:5)

您需要在保留关键字之前使用@,如下所示:

public enum ValidationType
{
    email,
    number,
    @float,
    range
}

答案 3 :(得分:3)

您不需要禁用任何内容,只需在关键字名称前使用@即可向编译器发出信号:

public enum ValidationType
{
    email,
    number,
    @float,
    range
}