28

我正在查看某人的代码并遇到了这个私人课程:

class CustomType : Dictionary<int, SomeOtherCustomType>
{
    // This is empty; nothing omitted here
}

然后在整个父类中使用 CustomType。这当然很整洁,因为 CustomType 比

Dictionary<int, SomeOtherCustomType>

我的问题是,仅仅为了捷径而拥有一个内部类对性能/内存有什么影响?在对性能敏感的应用程序中,这是否有助于(甚至轻微)更高的内存和/或 CPU 使用率?

4

2 回答 2

50

除非有定义自定义类型的其他原因,否则我建议将其更改为 using 语句。

using CustomType = Dictionary<int, SomeOtherCustomType>;

它只是为字典定义了一个别名,如果您使用一些复杂的参数化类,它会非常有用。

这消除了声明新类型的需要,因为目前的代码将失败。

CustomType dictionary = new Dictionary<int, SomeOtherCustomType>(); //custom type is a different class and can't be instantiated with a dictionary

但是,如果您改用别名,它会起作用。

于 2013-06-10T15:51:28.587 回答
15

它的短和长是,不。根据定义,该类CustomType是 a Dictionary<int, SomeOtherCustomType>,因此它将被分配。

尤其如此,因为该类实际上没有实现。

于 2013-06-10T15:46:24.733 回答