其中带有引用类型的live struct作为属性

nil*_*lus 3 c# struct garbage-collection

我创建了带有引用类型和属性的静态数组的struct,它通过存储在struct中的唯一id从该数组获取对象 - 但我不知道它有任何意义,我想在堆栈上存储struct.

struct TestStruct
{
 static TestClass[] Instances = new TestClass[16]; 
 int uid; //max value = 15
 TestClass Instance
 {
  get { return Instances[uid]; }
 } 
}
Run Code Online (Sandbox Code Playgroud)

Jus*_*ner 5

结构本身将存储在堆栈中.

TestClass是您的参考类型.无论你做什么,它们都将被存储在堆上.在这种情况下Instances,堆上是一个静态数组.