在C#中,存储引用是通过使用引用类型变量来实现的。引用类型变量可以存储对象的引用,而不是对象本身。这意味着,当您将引用类型变量分配给另一个变量时,您实际上是在共享同一个对象,而不是创建一个新的对象副本。
在C#中,有两种主要的引用类型:
在C#中,还有其他一些引用类型,例如数组、委托和字符串。
以下是一些使用引用类型变量的示例:
// 创建一个类的实例并将其存储在引用类型变量中
MyClass myClassInstance = new MyClass();
// 将一个类的实例的引用存储在另一个引用类型变量中,这两个变量实际上指向同一个对象
MyClass anotherMyClassInstance = myClassInstance;
// 修改anotherMyClassInstance的属性值,也会影响myClassInstance的属性值,因为它们指向同一个对象
anotherMyClassInstance.MyProperty = "New Value";
// 创建一个接口的实现并将其存储在引用类型变量中
IMyInterface myInterfaceImplementation = new MyInterfaceImplementation();
// 将接口实现的引用存储在另一个引用类型变量中
IMyInterface anotherMyInterfaceImplementation = myInterfaceImplementation;
// 调用接口实现的方法,这将影响myInterfaceImplementation和anotherMyInterfaceImplementation指向的对象
anotherMyInterfaceImplementation.MyMethod();
需要注意的是,当您将引用类型变量作为函数参数传递时,如果您修改了参数的属性值,则会影响原始对象的属性值,因为您实际上是在共享同一个对象。如果您想要创建一个新的对象副本,而不是共享同一个对象,则需要使用值类型。
领取专属 10元无门槛券
手把手带您无忧上云