一.值类型和引用类型值类型:int.float.bool和string这些类型都属于值类型,使用这些类型的变量直接指向存在内存中的值,值类型的变量的值存储在栈中.当使用等号=将一个变量的值赋给另一个变量时,如 j = i ,实际上是在内存中将 i 的值进行了拷贝.可以通过 &i 获取变量 i 的内存地址. 值拷贝 引用类型:特指slice.map.channel这三种预定义类型.引用类型拥有更复杂的存储结构:(1)分配内存 (2)初始化一系列属性等一个引用类型的变量r1存储的是r1的值所在的内
http://www.cnblogs.com/yank/archive/2011/10/24/2204145.html http://www.cnblogs.com/zwq194/archive/2012/08/06/2625403.html 关于String为值类型还是引用类型的讨论一直没有平息,最近一直在研究性能方面的问题,今天再次将此问题进行一次明确.希望能给大家带来点帮助. 如果有错误请指出. 来看下面例子: //值类型 ; int b = a; a = ; Console.WriteL
using System; internal class Program { private static void Main() { //值类型 ; int b = a; a = ; Console.WriteLine($"a is {a},b is {b}"); //字符串 string str1 = "ab"; string str2 = str1; str1 = "abc"; Console.WriteLine($"str1 i