码迷,mamicode.com
首页 > Windows程序 > 详细

C#关键字

时间:2015-04-08 19:41:41      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

函数返回值前的修饰符 params ,ref ,out
params修饰的数据类型只能数组,用于参数不固定时;且此参数位于所有形式参数的最后;
 public static int GetMax(params int[]args)
{
        if(params==null)throw new exception("请传几个值!");
        int max=args[0]
        foreach(int i in args)
        {
            if(max<args[i])
                max=args[i]
        }
        return max;
}
 static void main(string []args)
{
        int i=GetMax(1,2,3,4............);//参数也可以是数组
        Console.WriteLine("最大值为:"+i);
}
ref修饰的参数作用:将参数传递类型转由值类型转换为引用类型,这是所传递的参数就有参数的副本变为参数的地址;
 
第一种参数无ref修饰;
public static void swap(int m,int n)//参数无ref修饰
{
        int i=m;
        m=n;
        n=i;
}
static void main(string []args)
{        
        int m=2;
        int n=3;
        swap(m,n);
        console.WriteLine("m="+m.Tostring,"n="+n.Tostring);//m=2,n=3此时只是将m.n的值复制一份传递给swap方法,交换的是他们的副本;
}
第二种参数有ref修饰;
 
public static void swap(ref int m,ref int n)//参数ref修饰
{
        int i=m;
        m=n;
        n=i;
}
static void main(string []args)
{        
        int m=2;
        int n=3;//必须要赋值,这样它才会在内存中有地址;
        swap(ref m,ref n);
        console.WriteLine("m="+m.Tostring,"n="+n.Tostring);//m=3,n=2此时只是将m.n的地址传递给swap方法,交换的是他们的地址,所有数值做相应的改变;
}
如果参数类型是数组,则不需要加ref,就可以实现交换,因为数组本来就是引用类型;
 
out让函数可以输出多个值
public bool Login(string Account,string Pwd,out Msg)
{
        bool flag=true;
        if(Account=="admin")
        {
               if(Pwd=="pwd")
                {
                    Msg="登陆成功";
                } 
                else
                {
                    Msg="密码错误";
                    flag=flase;
                }
        }
        else
        {
            Msg="账号错误";
            flag=false;
        }
        return flag;
}
static void main(string  []args)
{
        string Msg;//获取返回来的信息内容,不需要赋值;
        bool flag=Login(account,pwd,out Msg);
}

C#关键字

标签:

原文地址:http://www.cnblogs.com/jaysen/p/4403394.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!