C#类中先申明后定义与直接定义的区别
在C#类中,直接在类中new出实例,和先在类中申明变量,再在构造函数中new出实例,这两者在内存分配上有什么区别?
高手指教!谢谢!
------解决方案--------------------D 学习...............
------解决方案--------------------没有区别
------解决方案--------------------前者:是声明对象并且同时分配内存空间,而后者是要到构造函数的时候才分配内存空间
------解决方案--------------------分配的地址可能不一样
C#不要去管内存分配 这是MS不希望看到的
------解决方案--------------------我记得是先声明不分配内存,引用时系统才分配内存;
直接定义则直接分配内存空间.
------解决方案--------------------应该是一样的,但最好都写在构造函数中,看的清楚。
------解决方案--------------------TO:在C#类中,直接在类中new出实例,和先在类中申明变量,再在构造函数中new出实例,这两者在内存分配上有什么区别?
for example:
public class Test
{
private ArrayList list=new ArrayList();
}
虽然在声明的时候已经new了,但是实际上是在创建对象Test对象实例时在构造函数中创建的ArrayList的实例...
即上面的等价于:
public class Test
{
private ArrayList list;
public Test()
{
list=new ArrayList();
}
}