我只是在检查一个代码片段。在他的班级顶部,这个人有他的命名空间,如:
using System;
using System.Text;
但后来他做了我以前从未见过的事情:
using input = System.Char;
后来他声明了一个变量:
public input? data;
所以我想知道,他为什么不直接创建一个 char 变量?而不是将 System.char 保存到输入中,然后使用输入作为类型。
请注意,这是一个相当古老的代码片段。
我只是在检查一个代码片段。在他的班级顶部,这个人有他的命名空间,如:
using System;
using System.Text;
但后来他做了我以前从未见过的事情:
using input = System.Char;
后来他声明了一个变量:
public input? data;
所以我想知道,他为什么不直接创建一个 char 变量?而不是将 System.char 保存到输入中,然后使用输入作为类型。
请注意,这是一个相当古老的代码片段。
所以我想知道,他为什么不直接创建一个 char 变量?
你得问原作者。但是我们可以猜到,这使得以后可以更改为
using input = System.Int32;
接着
public input? data;
变成不同的东西,但它一直在工作。可以保留大部分/所有代码以继续为不同类型工作。
因此,它为输入类型提供了单点定义 (SPoD)。
List<T>
但话虽如此,这是一种罕见的做法,完全被泛型( )取代。
这称为alias
命名空间或类型的 an。将长名称空间或类型缩写为较短名称是很常见的。
见MSDN
这只是一个别名。很可能使用它,以便如果将来需要更改输入类型,可以在一个地方快速轻松地更改它,而不必在整个文件中查找和替换它的所有实例。