不使用系统命名空间如何使用字符串

时间:2015-05-30 07:43:03

标签: c# asp.net .net string

任何人都可以告诉我,我没有使用系统名称空间,但字符串可用作字符串hello =“Hello”;并且不会抛出任何编译时错误

但是,如果我写大写字符串,则它不可用。

sealed class SealedClass
{
    public void PrintSealed()
    {
        string hello = "Hello";
    }
}

1 个答案:

答案 0 :(得分:9)

您不需要using关键字来使用库的“片段”。 using关键字只是为了更容易引用名称空间内的类型。

写作时

using System;

.... ...

String hello = "Hello";

编译器将其替换为

System.String hello = "Hello";

但你可以直接写

System.String hello = "Hello";

没有using System。但这很痛苦: - )

然后stringSystem.String的别名,因此当您编写string时,C#编译器会将其替换为System.StringMSDN)。

请注意,要使用库,您仍然需要引用它,但是您不会从代码中引用它,而是从项目中引用它,执行Add Referencemscorlib库(程序集)会自动引用(您无法删除引用)

这与Microsoft Visual C / C ++略有不同,后者通常有类似的内容:

#pragma comment(lib, "somelibrary")

这是链接器包含.lib文件(库)的指令。在Visual C / C ++中,您通常不需要显式包含库,只需包含其包含该命令的头,并且链接器将自动链接库。