日期:2014-05-17  浏览次数:20890 次

跪求大神!程序改错
改错,
 private void btnRun_Click(object sender, EventArgs e)
        {
            int a = 20, b = 30, c = 45;
            int sum = 0;
            double average = 0;

            GetSumAndAverage(a, b, c, sum, average);

            Output(String.Format("和是:{0}, 平均值是:{1}",sum,average));
        }

        private static void GetSumAndAverage(int a, int b, int c, int sum, double aver)
        {
            sum = a + b + c;
            aver = (a + b + c) / 3.0;
    }

------解决方案--------------------
GetSumAndAverage(a, b, c, out sum, out average);

private static void GetSumAndAverage(int a, int b, int c, out int sum, out double aver)
------解决方案--------------------
上面使用ref与out其实都可以,只是两者有一点区别,得注意一下:两者不同之处在于 ref 要求变量必须在传递之前进行初始化。若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字。 
更多内容请查阅msdn上关于【方法参数】的说明:http://msdn.microsoft.com/zh-cn/library/8f1hz171(v=vs.80).aspx
------解决方案--------------------
out和ref是可以在运行完方法后改变变量的值的......一楼正解 回答完毕.....具体的说明7楼已经给出.....我是纯来蹭分的 嘻嘻