问题描述
- C#中Cs cs1;的cs1只是一个引用符,cs1占空间吗??不过很多书上说是存储是栈上
-
可是这个Cs cs1;只是一个类的引用符的声明,声明不是不占空间的吗,何来在"栈"上存储了
Cs 是一个类名。
解决方案
Cs cs1 = null;
它的意思是分配了栈空间,但此对象没有对应的堆首地址的指向。即
解决方案二:
对象的声明是栈上分配一个指针,在堆上分配具体的空间。没有实例,只占用了栈上的空指针地址空间,没有堆上具体内存的开销。
解决方案三:
class Cs
{
static void Main(string[] args)
{
Cs cs;
if(cs==null)
Console.WriteLine("size_cs");
}
}
时间: 2025-01-03 07:47:45