2011-01-08 80 views
0

为什么在命名空间内使用“int”是不合法的? “int”是一个类型。对?就像“班级”一样。我知道他们之间存在差异,但都有数据类型。.net:为什么在命名空间里面有int是不合法的?

namespace Ikco.Crp.UI.Common 
{ 
    public int i; 
    .... 
    .... 
} 

微软的这个想法是什么?

+7

“为什么在命名空间里面有”int“是不合法的?” - 因为这就是语言的定义! – 2011-01-08 10:57:15

回答

4

.NET中没有全局变量。我想这就是主意。

12

定义一个类和一个变量是有区别的。当你把一个类放入一个名字空间时,你可以定义一个新类型。在你的声明中,你没有定义一个新的类型。相反,您使用现有类型(int)来定义变量。等效使用类会是这样的

namespace Foo{ 
    class Bar{} // type definition 
    Bar the_bar; // variable definition 
} 

第二个定义是不允许的,要么,所以类和整数真正的行为是一样的:有在C#中没有全局变量。

3

“INT” 是一个类型。对?就像“班级”一样。我知道他们之间存在差异,但都有数据类型。

int是一种数据类型。 class是一个关键字。您正在使用的语法在名称空间内声明一个变量,这是不允许的。

相关问题