我知道如果我传递一个值类型(int
、struct
等)作为参数(没有ref
关键字),该变量的副本被传递给该方法,但是如果我使用ref
关键字,则传递的是对该变量的引用,而不是新的引用。
但是,对于引用类型,即使没有ref
关键字,也会将引用传递给方法,而不是复制。那么,ref
关键字与引用类型有什么关系呢?
举个例子:
var x = new Foo();
以下内容之间有什么不同?
void Bar(Foo y) {
y.Name = "2";
}
和
void Bar(ref Foo y) {
y.Name = "2";
}
https://stackoverflow.com/questions/961717
复制相似问题