class1.cs

来自「C#开发教程 由浅入深 配有实例 是初学者的好帮手」· CS 代码 · 共 47 行

CS
47
字号
using System;

namespace RefByRef
{
	class AnotherClass
	{
		public int ID;
	}
	class SomeClass
	{
//		public AnotherClass ChangeObject(AnotherClass ref1)
		public AnotherClass ChangeObject(ref AnotherClass ref1)
		{
			ref1.ID = ref1.ID*2;
			return ref1;
		}
		public void SubtleChange(
			ref AnotherClass ref1, AnotherClass ref2)
		{
			ref1 = new AnotherClass();
			ref1.ID = 999;

			ref2 = new AnotherClass();
			ref2.ID = 999;
		}
	}

	class ValRefTest
	{
		[STAThread]
		static void Main(string[] args)
		{
			SomeClass sc = new SomeClass();
			AnotherClass ref1 = new AnotherClass();
			ref1.ID = 3;
//			AnotherClass ref2 = sc.ChangeObject(ref1);
			AnotherClass ref2 = sc.ChangeObject(ref ref1);
			Console.WriteLine("ref1.ID = {0}, ref2.ID = {1}",
				ref1.ID, ref2.ID);

			sc.SubtleChange(ref ref1, ref2);
			Console.WriteLine("ref1.ID = {0}, ref2.ID = {1}",
				ref1.ID, ref2.ID);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?