可以从数组派生?

时间:2015-03-09 02:57:18

标签: c# arrays inheritance memory memory-management

目前我有一个包含数组和整数的类。

我有数百万个这样的对象,并且想通过只有一个数组来节省内存,所以我为每个对象保存了12个字节(不必为每个对象分配一个类包装器)。这将节省大量内存。

不幸的是,我还需要存储整数。我正在考虑将它存储在第一个索引中,但它有点凌乱。我希望我可以从数组派生并在子类中插入int成员,但显然编译器不允许这样做。

还有其他选择吗?我想我可以从referencesource框架中复制并粘贴数组类并添加我的属性,但它看起来有点过分。

1 个答案:

答案 0 :(得分:3)

你不能从数组派生(并且“从referencesource框架中复制并粘贴数组类”可能不会对你有很大帮助,因为数组已经非常集成到语言/框架中)。

一个选项可能是struct使用整数和数组 - 处理struct会遇到很大麻烦,但如果小心,它会为您提供您正在寻找的内容(如果您的“整数值“是可变的或数组需要改变大小 - 我强烈建议忘记你已经看到过这样的建议。”