结构与类之间的的区别求证
是结构的话当通过指向同一实例的另一个变量访问时,更改的类成员的值会影响这些成员。
是类的话,没个类的实例都会指向各自的内存地址
这样说对吗?
Class1现在是一个结构,
ArrayList engineers = new ArrayList();
Class1 a = new Class1();
a.a = 0;
a.b = 1;
Class1 b = new Class1();
b.b = 0;
b.a = 1;
engineers.Add(a);
engineers.Add(b);
MessageBox.Show(engineers.Count.ToString());
Class1 c = new Class1();
c.a = 0;
c.b = 1;
engineers.Remove(c);
MessageBox.Show(engineers.Count.ToString());
这样删除数据的话,它是通过数据在栈里面进行删除? 还是怎么的
------解决方案--------------------
------解决方案--------------------
MSDN上 ArrayList.Remove 方法 的备注部分有说明,
“此方法通过调用 Object.Equals 确定相等性。”
而 Object.Equals 方法 备注部分也有说明,
“Equals 的默认实现支持引用相等性(对于引用类型)和按位相等性(对于值类型)。”
类是引用类型而结构是值类型。