我有一个关于 namespace 名称和类的问题:
如果我在命名空间 VeloConnect 中有一个名为 cVeloConnect 的类。 例如
namespace VeloConnect
{
public class cVeloConnect
{
// Some content
public void PrintMe();
}
public class cSomeClass
{
// Some content
}
}
现在我想创建一个新的 cVeloConnect 实例,调用这个实例 VeloConnect,我不能再访问 VeloConnect 命名空间了...... 例如
VeloConnect.cVeloConnect VeloConnect = new VeloConnect.cVeloConnect();
VeloConnect.PrintMe();
// The below thing is not possible
VeloConnect.cSomeClass MyClass = new VeloConnect.cSomeClass();
如果我不想重命名命名空间或我以前的实例,我该如何访问其他类?
最佳答案
好吧,一种选择是遵循命名约定来避免这种事情 - 您的类不应该以 c
开头,而您的局部变量通常以一个小写字母。
要避免在声明中完全 使用 namespace ,您可以在代码顶部使用using
指令。或者,如果您真的想要指定命名空间,您可以使用global::
:
global::VeloConnect.cSomeClass MyClass = new global::VeloConnect.cSomeClass();
但总的来说,我不喜欢在我的实际代码中看到 namespace - 我更喜欢使用 using
指令,这样我就可以在代码主体中使用简单的名称。无论哪种方式,我都会强烈敦促您开始关注 .NET naming conventions .
关于c# - 如何访问与类实例同名的命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6912155/