- 值类型(int,long,double,char,byte,bool,... enum,struct) 数据存储在内存的栈(Stack)中;
- 引用类型(string,object实例对象)存储存储在堆(heap)中(字符串常量是存储在静态存储区)。
需要注意点的是string 类型的常量是存储在静态存储区切相同的字符串常量在静态存储区仅存储一份,例如:
int a = 6;
string str1 = "aaa";
string str2 = "aaa";
如果,一旦更改
str1="bbb";
那么 str1 变量在栈中存储的地址将发生改变,变成 “bbb”在静态存储区的存放地址,如下图:
其他类型的引用类型的数据存储同样如此,只不过数据不存储在静态存储区。
个人经验,转载请注明出处。感谢!