书上例子没看懂,求大神给例。。。
使用值方式(不用ref修饰)传递值类型参数时,参数在方法中的修改不会保留。
使用值方式(不用ref修饰)传递引用类型参数时,参数在方法中的修改会保留。
使用值方式(用ref修饰)传递值类型或引用类型参数时,参数在方法中的修改都会保留。。。
第二个,第三个懂。。第一个想了半天没懂,求大神
不知道这三句话是你自己总结的还是书上总结的,如果是书上总结的,那么第二句话少了非常关键的一个前提,即“在不为该引用类型重新赋值或实例化时,参数在方法中的修改才会保留,否则一样不保留。”
我们举四个例子,假设存在一个引用类型 TestClass。
1、
private void TestMethod(int i)
2、
class TestClass
3、
class TestClass
4、
private void TestMethod(ref int i)值类型传参是把值复制了一份。
追问前两个都不用ref修饰,怎么区别值类型传参还是引用类型传参?
追答int float等和所有struct都是值类型,所有class object string 数组是引用类型。
本回答被提问者采纳额。。。我不明白前两个不用ref修饰符。。。怎么区别值类型传参还是引用类型传参?