【发布时间】:2014-06-24 14:55:41
【问题描述】:
这主要只是一个好奇的问题。我试过“静态类速记”或“静态类昵称”之类的搜索,但没有找到任何东西,这让我相信这是不可能的。
假设有一个名为TransitionalTransactionDeltaTemporaryRecord 的静态类。 C# 中是否有办法在我的代码中创建对所述类的更短名称的引用,以便我可以使用该引用代替该类?伪代码示例如下。
staticref DeltaRecord = System.TransitionalTransactionDeltaTemporaryRecord;
Transaction test = new Transaction();
// Ideally, these two would accomplish the same thing
test.Epsilon = DeltaRecord.ComputeEpsilon(pi);
test.Epsilon = TransitionalTransactionDeltaTemporaryRecord.ComputeEpsilon(pi);
如果可能的话,我希望避免使用过长的标识符。
【问题讨论】:
-
我不建议使用其他人都推荐的type alias。别名应该是用来区分同名的两种类型,所以解决命名冲突。它不应该用于可读性。事实上,它只会让用户感到困惑——他会认为
ShortName是一个实际的类型,但事实并非如此。此外,别名有点用处,因为它仅对 that 源文件有效。 IMO,它降低了可读性,而不是增加了。 -
我可以看到@dcastro 的观点,但我不会撒谎,这个名字很长。别名和使用指令的要点之一是缩短代码并使代码更具可读性。
-
@AdmiralAdama 真的,这个名字真的很可怕。但是不应该重命名类型本身吗?我怀疑这个名字需要那么长..
-
我同意@dcastro,我认为这是 OP 为讨论而发明的一个示例。但是,有时您可能会使用无法控制的代码等。这是一个需要了解的重要功能,但更重要的是要知道如何不滥用它。 强大的力量和所有这些
-
这确实是一个人为的例子,但我以前遇到过这样的类名,在我无法控制的代码中。