我有一个导入System.IO的VB文件,但只使用它有几个地方。我的同事和我想知道如果我们只是使用System.IO显然我们需要它(IE。,System.IO.MemoryStream)而不是导入它,是否会有小的性能提升。
答案 0 :(得分:11)
没有。没有区别。在任何一种情况下,编译器都会产生完全相同的IL。
您可以通过两种方式进行编译来证明它,然后使用Reflector来反汇编装配并观察产生的IL。
答案 1 :(得分:3)
Imports
; C#是using
)的目的是避免必须键入您打算使用的每个类的完全限定名称。编译后的IL代码仍然使用完全限定名称,因此导入命名空间只是为了简化您作为开发人员的一些工作。
导入命名空间的一个缺点是,如果有人给你使用代码,但是没有与你共享命名空间导入的代码文件的顶部,你必须自己弄清楚要添加的命名空间。