C# 命名空间与指令

标签 c# namespaces naming

我在 C++ 和 Java 方面拥有多年经验,但对 C# 还很陌生。

最近我在读一本关于 C# 的书时,他们将以下内容称为 namespace ,我觉得很奇怪。根据我对 C++ 的了解,这些实际上是预处理器指令

using System;                      //A book called these as namespace
using System.Collections.Generic;  //A book called these as namespace
using System.Text;                 //A book called these as namespace

根据 msdn 网站,以上内容被称为指令

如果上面是调用命名空间

下面这个呢?

namespace My_First_Program  //This is also call namespace
{
    class Program
    {
        static void Main()
    }
}

所以我的第一个问题是:命名空间到底是哪个?我将 using System; 调用为 预处理器指令 是否正确?

我的第二个问题是:我可以假设命名空间 My_First_Program 的工作方式类似于 C++ 中的使用命名空间 std 吗?

最佳答案

以下语句定义命名空间:

namespace My_First_Program {
 ...
}

大括号内的任何代码都位于(名称精美的)My_First_Program 命名空间内。

using 语句“导入”命名空间,这样您就不必使用它们的完全限定名称。

“using”语句不是预处理器指令。您可以找到它们的列表 here .

关于C# 命名空间与指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23855379/

相关文章:

python处理不同类型

.net - .NET 程序集名称是否应该包含版本号?

php - PhalconPHP - 无法从 Controller 中的 DI 加载组件

c# - 如何使用 C# 清理 HTML 标签

c# - MVVM设计模式问题

c# - 在 Win7 中运行 x86 目标程序集时出现问题

java - 在java中将带有命名空间的xml转换为json

ruby-on-rails - 如何检查类或模块是否已命名空间?

python - 做Python喜欢 Camel

c# - 如何使 C# Web 服务生成 soapenv 命名空间而不是 soap?