using System;
namespace HelloWorld
{
partial class Program
{
static void Main(string[] args)
{
Console.WriteLine();
}
}
}
我的问题是,当我们在顶部使用System时,该名称空间中的所有代码是否都在此名称空间(HelloWorld)的后台加载?
答案 0 :(得分:0)
using
不会更改代码的加载方式。它仅更改在编译器解析和编译代码时允许隐式采用的命名空间。我认为编译器生成的输出与您不使用using
相同,但是显式地将其写入每个引用的全名。
但是要回答另一个问题,是的,名称空间中的每个对象都会受到影响,因此您应该能够引用Console
,而不必在其之前显式包含System.
。请记住,using
与添加引用不同。如果没有对System.dll的引用,您仍然会收到错误消息。
答案 1 :(得分:0)
命名空间对编译后的程序不起作用,这只是组织代码的一种方式。幕后没有任何东西。当两个类位于同一名称空间中时,您无需添加using即可引用该类。
当然,如果您使用的名称空间位于未自动引用的程序集中,则还必须添加一个引用。 “使用”对您没有帮助。
这里是命名空间的很好参考: