3

我只是在检查一个代码片段。在他的班级顶部,这个人有他的命名空间,如:

using System;
using System.Text;

但后来他做了我以前从未见过的事情:

using input = System.Char;

后来他声明了一个变量:

public input? data;

所以我想知道,他为什么不直接创建一个 char 变量?而不是将 System.char 保存到输入中,然后使用输入作为类型。

请注意,这是一个相当古老的代码片段。

4

3 回答 3

3

所以我想知道,他为什么不直接创建一个 char 变量?

你得问原作者。但是我们可以猜到,这使得以后可以更改为

using input = System.Int32;

接着

public input? data;

变成不同的东西,但它一直在工作。可以保留大部分/所有代码以继续为不同类型工作。

因此,它为输入类型提供了单点定义 (SPoD)。

List<T>但话虽如此,这是一种罕见的做法,完全被泛型( )取代。

于 2013-08-19T13:59:06.943 回答
1

这称为alias命名空间或类型的 an。将长名称空间或类型缩写为较短名称是很常见的。

MSDN

于 2013-08-19T13:57:29.353 回答
0

这只是一个别名。很可能使用它,以便如果将来需要更改输入类型,可以在一个地方快速轻松地更改它,而不必在整个文件中查找和替换它的所有实例。

于 2013-08-19T13:57:14.573 回答