c# - 将命名空间保存到变量

标签 c# namespaces

我只是在检查一段代码。这个人在类名列前茅,他的命名空间如下:

using System;
using System.Text;

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

using input = System.Char;

稍后他声明了一个变量:

public input? data;

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

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

最佳答案

So I was wondering, why doesn't he just make a char variable?

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

using input = System.Int32;

然后

public input? data;

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

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

但话说回来,这是一种罕见的做法,完全被泛型所取代 (List<T>)。

关于c# - 将命名空间保存到变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18315595/

相关文章:

php - 第 30 行的 fatal error : Class 'Psr\Log\AbstractLogger' not found in Logger. php

c# - RichTextBox BeginUpdate() EndUpdate() 扩展方法不起作用

c# - 如何递增或循环遍历特定目录中的文件夹

c# - 使用自定义参数验证助手中断代码分析

c# - 是否有更简单的方法使用 Microsoft.Extensions.Configuration 将数组作为命令行参数传递?

c++ - 为什么 <cmath> 函数不需要 "using std::xxx"?

c++ - 全局变量与类变量有何不同,它们是否相同?

c# - Visual Studio 2019 WPF 设计器不会显示自定义控件

namespaces - 导轨 : Benefit of URL path modification vs Namespace?

围绕第 3 方代码改造命名空间的 PHP 策略