类公共静态成员的c#别名
本文关键字:别名 静态成员 | 更新日期: 2023-09-27 18:06:47
我有RenderManager类,它有公共静态成员therrenderer。而不是RenderManager。我能给renderer创建别名吗,比如MyRenderer之类的?
谢谢
您可以创建指向该对象的类或方法级符号,但您不能创建指向该对象的真正全局别名。它仍然必须在其他对象的命名空间中。
虽然在局部(在函数或类中)您可以做类似var renderer = RenderManager.TheRenderer
的事情,但您必须在任何想要使用该别名的地方这样做。
我认为你做不到。唯一的可能是为Type
而不是为其成员创建别名,如下所示:
using rnd = RendererManager;
//and in code somewhere use
rnd.TheRenderer
希望我没有理解你的意思。
你是指var MyRenderer = RenderManager.TheRenderer;
吗?即将静态成员的值赋给名为MyRenderer
的变量?
与validour的解决方案不同,如果RenderManager.TheRenderer
的值在分配后发生变化,MyRenderer
将具有旧值
可以声明Func或Action类型的变量
如果therrenderer有返回值:
static Func<bool> MyRenderer = () => RenderManager.TheRenderer();
如果没有:
static Action MyRenderer = () => RenderManager.TheRenderer();
如果renderer接受一些输入参数,那么你应该使用其他形式的Func<>和Action<>。
Func<OutT, In1T, In2T, ...>
Action<In1T, In2T, ...>