c#中有全局方法吗?
本文关键字:方法 全局 | 更新日期: 2023-09-27 18:17:06
我有一个静态类我们说它叫Worker,我们说在它里面有一个方法叫做Wait(float f)它是公共的所以我可以在任何地方访问它,像这样:
Worker.Wait(1000);
现在我想知道是否有什么方法可以定义某种唯一性特殊方法,所以我可以把它写短一点,像这样:
Wait(1000);
使用c# 6可以做到这一点。在你的文件的顶部,你需要添加一个using static Your.Type.Name.Here;
.
namespace MyNamespace
{
public static class Worker
{
public static void Wait(int msec)
{
....
}
}
}
//In another file
using static MyNamespace.Worker;
public class Foo
{
public void Bar()
{
Wait(500); //Is the same as calling "MyNamespace.Worker.Wait(500);" here
}
}
不,c#中不能有非类的方法
不,你不能,方法属于一个类,如果你等待(1)是因为你在一个类中,该方法被定义(或父类)
<标题>编辑…如上所述,这在c# 5之前是正确的,现在可以在c# 6中完成,它可以静态导入一些类…
看看Scott Chamberlain"s在这里回答并链接到MSDN
标题>