C#的值类型,引用类型,栈,堆,ref,out
2013-12-30 11:05
246 查看
要点:
引用类型分两段存储,一是在托管堆里的值(实例对象),二是持有它的引用的变量。对于局部变量(参数)来说,这个引用就在栈里,而作为类型的字段变量的话,引用会跟随这个对象。
[b]值类型的值是在它声明的位置存储的。即局部变量(参数)的值会在栈里,作为类型成员的话,会跟随对象。[/b]
对于运行时来说,ref和out是一样,它们的区别是C#编译器对它们的区别,ref要求初始化好,out没有要求。因为out没有要求初始化,所以被调用的方法不能读取out参数,且方法返回前必须赋值。
参考 /article/5272774.html
引用类型分两段存储,一是在托管堆里的值(实例对象),二是持有它的引用的变量。对于局部变量(参数)来说,这个引用就在栈里,而作为类型的字段变量的话,引用会跟随这个对象。
[b]值类型的值是在它声明的位置存储的。即局部变量(参数)的值会在栈里,作为类型成员的话,会跟随对象。[/b]
对于运行时来说,ref和out是一样,它们的区别是C#编译器对它们的区别,ref要求初始化好,out没有要求。因为out没有要求初始化,所以被调用的方法不能读取out参数,且方法返回前必须赋值。
参考 /article/5272774.html
相关文章推荐
- 关于C#值类型,引用类型,值传递,引用传递(ref,out)
- C#中的ref,out,值类型,引用类型的笔记
- C#中引用类型做方法参数时,加ref或out,与不加ref或out到底有什么区别?
- c# 值类型与引用类型 实参与形参 ref与out
- 一看就懂:图解C#中的值类型、引用类型、栈、堆、ref、out
- 一看就懂:图解C#中的值类型、引用类型、栈、堆、ref、out
- 图解C#的值类型,引用类型,栈,堆,ref,out
- 转:图解C#的值类型,引用类型,栈,堆,ref,out
- 图解C#的值类型,引用类型,栈,堆,ref,out
- 图解C#的值类型,引用类型,栈,堆,ref,out
- 图解C#的值类型,引用类型,栈,堆,ref,out
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- c#值类型,引用练习,ref,out
- C#引用类型参数加ref或out与不加ref或out的区别
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- (教学思路 C#之类三)方法参数类型(ref、out、parmas)
- c#方法中调用参数的值传递方式和引用传递方式,以及ref与out的区别
- C# 参考之方法参数关键字:params、ref及out 引用-http://www.cnblogs.com/hunts/archive/2007/01/13/619620.html
- C#中参数为引用类型加ref和不加的区别
- C#中请不要混淆引用类型和ref引用传参