我可以在C#方法中使用F#的Ticked Function名称表示法吗?

时间:2014-03-19 18:05:32

标签: c# f#

在F#语言中,可以使用``Ticked function name notation``命名函数。单元测试命名非常方便。

有可能用C#语言吗?我们始终可以使用Underscored_method_namesPascalMethodNames,但这并不容易阅读。

4 个答案:

答案 0 :(得分:11)

不,基本上。 C#类型和成员名称不能包含空格(并且不能以数字开头)。支持从保留关键字(@前缀)中消除名称的歧义,但这是关于它的。

当长名称​​用于显示时,通常DisplayNameAttribute是有用的,即

[DisplayName("My class")]
public class MyClass {
    [DisplayName("Full name")]
    public string FullName {get;set;}
}
  • 但这对您的单元测试需求没有帮助。

答案 1 :(得分:5)

无法在标识符名称中输入实际空格(ASCII 32)。

但是,请参阅this blog关于(ab)使用Unicode插入其他类似空格的代码点。作者描述了一种使用热键将其自动化的方法。

我不建议您这样做,因为它会导致严重的可维护性和调试问题。

答案 2 :(得分:4)

不,这不是该语言的一个特征。没有方法可以转义方法名称,以便可以在其中使用空格。

答案 3 :(得分:1)

许多人没有意识到,在命名C#标识符,类,成员等时,您不仅限于英语。是的,您可以用俄语或任何其他语言编写您的应用程序:

var форма = new HtmlForm();

int ワン = 1;

也许,你可以为你的目的利用这样的东西吗?