我是 C# 新手,我不完全理解 namespace 是什么,以及 using 关键字的作用。如果有人能解释其中的差异,我将不胜感激。据我猜测,
using
类似于C++中的#include
。
如果是这样的话,命名空间有什么用呢?我唯一接触过 C++ 中的命名空间是在使用
using namespace std;
时,它让我放弃了函数调用中的 std::
。
namespace
:一组相关的类、接口和其他类型合并到一个单元中。它是相关类型的逻辑分组。
using
:主要用于导入命名空间。
示例:
using System;
它还可以用于资源管理,例如确保一次性资源(例如文件或数据库连接)在超出范围时得到正确处理。
示例:
using (FileStream fileStream = new FileStream()) { }
这可以确保文件流被关闭并正确处理,即使抛出异常也是如此,以防止资源泄漏。
namespace
-语句声明了你自己的命名空间;如果您愿意的话,可以使用一组“捆绑课程”。您可以在名称空间中拥有非常不同的类,也可以创建子名称空间。
因此,使用
namespace
语句将隐式确保您可以访问同一命名空间中的其他类。您不需要在同一名称空间内进行显式引用。
在此处阅读有关 C# 中的命名空间的更多信息。
using
指令 用于在代码中使用命名空间,而不显式引用命名空间。当在类中多次使用名称空间时,这当然很有用。该指令不会像 namespace
语句那样更改类的状态或状态。
在此处阅读有关 C# 中的 using 指令的更多信息。
您还可以使用
using
关键字做更多事情...
快速简短回答 -
命名空间 - 是您自己命名并填充类的类的集合
using - 引入要使用的命名空间(类的集合)
为了更清晰地理解 C# 程序的各个部分 - https://www.tutorialspoint.com/What-are-the-main-parts-of-a-Chash-program
你几乎是正确的。
要了解有关 namespace 和 using 的更多信息,请参阅 here
由于您是 C# 新手,如果您有任何疑问,我建议您阅读 microsoft c# 和 .Net documentation。希望这有帮助:)
据我了解,
using: 是 Javascript 中的一种导入。意味着,使用导出代码的另一个文件中的一些代码。
命名空间:是Javascript中的一种导出。意味着,使此代码可用于另一个文件。