哪些.NET语言对扩展方法有语法支持?

哪些.NET语言对扩展方法有语法支持?,.net,extension-methods,.net,Extension Methods,我最近问了一个问题 这让我想知道,是否有一些.NET语言不直接支持扩展方法,即使用这样的API会让人感到痛苦的语言 我知道扩展方法是简单的静态方法,并且可能总是被这样调用,但是“支持扩展方法”意味着更紧密地集成到语言的语法中,以便在对象上调用方法;扩展方法在C#中的使用方式就像它们是常规方法一样 除了C#和VB.NET之外,哪些更流行的.NET语言实际上支持扩展方法,哪些不支持扩展方法?F#在最新版本(例如VS2010附带的版本)中支持扩展方法。 另请参见问题“使用C#from F#code中定

我最近问了一个问题

这让我想知道,是否有一些.NET语言不直接支持扩展方法,即使用这样的API会让人感到痛苦的语言

我知道扩展方法是简单的静态方法,并且可能总是被这样调用,但是“支持扩展方法”意味着更紧密地集成到语言的语法中,以便在对象上调用方法;扩展方法在C#中的使用方式就像它们是常规方法一样

除了C#和VB.NET之外,哪些更流行的.NET语言实际上支持扩展方法,哪些不支持扩展方法?

F#在最新版本(例如VS2010附带的版本)中支持扩展方法。 另请参见问题“使用C#from F#code中定义的扩展方法”


通过扩展类型系统的PowerShell


IronPython似乎支持扩展方法

  • (?),以及

IronRuby,对于“IronRuby调用C#扩展方法-错误-在.NET 3.5中的兼容性”问题,支持从版本1.4开始的扩展方法(需要.NET 4),通过
使用_clr_扩展


IronScheme:,但我不能完全确定它们是否与C#3中的扩展方法相同


Boo根据问题“如何在Boo中使用扩展方法”,支持从版本0.9.0开始的扩展方法


Nemerle似乎也支持扩展方法(根据)


<> >强>托管C++ >强:(扩展StAXX的答案)托管C++支持扩展方法,如在.< /p>中可以看到的
(请随意扩展和改进此答案!)

F#支持最新版本(例如VS2010附带的版本)中的扩展方法。 另请参见问题“使用C#from F#code中定义的扩展方法”


通过扩展类型系统的PowerShell


IronPython似乎支持扩展方法

  • (?),以及

IronRuby,对于“IronRuby调用C#扩展方法-错误-在.NET 3.5中的兼容性”问题,支持从版本1.4开始的扩展方法(需要.NET 4),通过
使用_clr_扩展


IronScheme:,但我不能完全确定它们是否与C#3中的扩展方法相同


Boo根据问题“如何在Boo中使用扩展方法”,支持从版本0.9.0开始的扩展方法


Nemerle似乎也支持扩展方法(根据)


<> >强>托管C++ >强:(扩展StAXX的答案)托管C++支持扩展方法,如在.< /p>中可以看到的
(请随意扩展和改进此答案!)