使用静态类型而不是变量
当项目不使用命名空间时,有没有办法告诉编译器使用静态类型而不是变量?
例如,我有一个名为User的类,它有各种静态和非静态方法。 假设其中一个静态方法叫做GetUser()
。
我试图从一个方法调用User.GetUser()
方法,该方法也有一个名为User的范围变量(inheritance自基类)。 但是,编译器抱怨说它找不到User.GetUser()
因为它认为我指的是范围内的User变量。
如果这个项目使用名称空间,我可以做ns1.User.GetUser()
,但在这种情况下这是不可行的。 有没有办法告诉编译器我是指User
类型而不是User
变量?
您可以使用:
global::User.GetUser()
或者使用using指令来替换类型:
using UserType = User; ... UserType.GetUser();
我强烈建议您使用命名空间:)
你能写global::User.GetUser()
吗?
见全球
-
使用
global::User.GetUser()
。 -
使用别名:
using UserClass = User;
-
重命名变量。
-
重命名类型。
-
减少变量的范围,使其不再在您使用变量的范围内。
或者,您可以为静态类使用别名。 在您的using
指令中,您可以添加:
using StaticUser = User;
然后就不会有歧义了。
上述就是C#学习教程:使用静态类型而不是变量分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/961116.html