1.在方法的参数类型前面加out,那么传参数的时候,也必须在实参前面加out,表明这个参数不是传入的而是传出值的。
2.如果参数是以out形式传入的,那么在传入前可以不赋初值。
3.在方法中对于形参被out修饰的,必须在使用前复制。
namespace out形参 { class Program { static void Main(string[] args) { int num = 100; int result = Test(out num); Console.WriteLine("num={0},result={1}", num, result); } static int Test(out int a) { a = 10; a++; return 200; } } }
运行结果:
num=11,result=200;
2.ref修饰形参,既可以输入也可以用于输出。out和ref解决的值传递问题,方法能改变实参的值。