值类型数据都会存储到栈中。
string a = "小白白";
a是引用类型数据,小白白会存储到堆中,而栈中会存储a的地址
图:
string是特殊的引用类型,它每次赋值时都会新开辟一个空间,然后赋值给新开辟的空间,原地址中的值是不会进行改变。利用stringbuilder(stringBuilder是类型,比如int也是类型),a也会等于大白白。
数组也是值类型,改变的是地址中的元素,所以str2中地址的元素也跟随str1改变了。
值类型数据都会存储到栈中。
string a = "小白白";
a是引用类型数据,小白白会存储到堆中,而栈中会存储a的地址
图:
string是特殊的引用类型,它每次赋值时都会新开辟一个空间,然后赋值给新开辟的空间,原地址中的值是不会进行改变。利用stringbuilder(stringBuilder是类型,比如int也是类型),a也会等于大白白。
数组也是值类型,改变的是地址中的元素,所以str2中地址的元素也跟随str1改变了。