标题:关键字ref的用法解释?求助...
只看楼主
tianqy
Rank: 5Rank: 5
等 级:职业侠客
帖 子:260
专家分:332
注 册:2011-4-7
结帖率:91.43%
已结贴  问题点数:20 回复次数:8 
关键字ref的用法解释?求助...
class Car
    {
        string carNumber="1001";
        string carType = "Car";
        public string GetCarNum(string num,string type)                    //创建方法
        {
            num = carNumber;                                //获取私有变量的值
            type = carType;                                    //获取私有变量的值
            return num;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Car myCar = new Car();                                //创建一个新对象
            string number="0";                                //初始化对象
            string type = String.Empty;                            //String.Empty初始化空字符串
            myCar.GetCarNum(number, type);                                 //改变字符串的值
            Console.WriteLine(number);                            //输出
            Console.WriteLine(type);
            Console.ReadKey();
        }
    }
    }
----------------------这个输出number是0,type是空字符。书上说“ref关键字来对多个对象进行更改”,下面是代码:
class Car
    {
        string carNumber="1001";                        //声明字符串变量
        string carType = "Car";                        //声明字符串变量
        public string GetCarNum(ref string num,ref string type)                 //使用ref关键字
        {
            num = carNumber;                        /获取私有变量的值
            type = carType;                            //获取私有变量的值
            return num;                            //返回字符串变量
        }
    }
    class Program
    {
        static void Main(string[] args)                    //程序的主入口方法
        {
            Car myCar = new Car();                        //创建一个新对象
            string number="0";                        //将number赋值为0
            string type = String.Empty;                    //将type赋值为空
            myCar.GetCarNum(ref number,ref type);                     //使用ref关键字
            Console.WriteLine(number);                    //输出字段
            Console.WriteLine(type);                        //输出字段
            Console.ReadKey();                        //等待用户按键
        }
    }
-------------这个输出是什么呢,ref关键字的作用(“ref关键字来对多个对象进行更改”)理解不了,哪位前辈帮忙解释下,我是初学者。

[ 本帖最后由 tianqy 于 2011-7-7 15:24 编辑 ]
搜索更多相关主题的帖子: 关键字 public return 
2011-07-07 15:21
tianqy
Rank: 5Rank: 5
等 级:职业侠客
帖 子:260
专家分:332
注 册:2011-4-7
得分:0 
20分啊,在线等呢,高手们进来解释哈吧

☞  软件驱动整个世界 ☜
2011-07-07 15:55
tianqy
Rank: 5Rank: 5
等 级:职业侠客
帖 子:260
专家分:332
注 册:2011-4-7
得分:0 
20分啊,在线等呢,高手们进来解释哈吧

☞  软件驱动整个世界 ☜
2011-07-07 15:55
tianqy
Rank: 5Rank: 5
等 级:职业侠客
帖 子:260
专家分:332
注 册:2011-4-7
得分:0 
哪有求高手

☞  软件驱动整个世界 ☜
2011-07-07 16:15
fily1314
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:166
专家分:1190
注 册:2007-7-18
得分:20 
输出1001跟Car啊,ref是引用传递,传递的是参数的地址,相当于C++里面的传址,
在函数里面修改了值,在外部值也变了
2011-07-07 16:55
tianqy
Rank: 5Rank: 5
等 级:职业侠客
帖 子:260
专家分:332
注 册:2011-4-7
得分:0 
哦 谢谢

☞  软件驱动整个世界 ☜
2011-07-07 17:35
zyx57123
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-7-14
得分:0 
ref引用传递!
2011-07-14 09:48
hxtmac
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-7-14
得分:0 
ref可以不用初始化,out必须初始化。。。
2011-07-14 16:22
jiajiajing6
Rank: 1
等 级:新手上路
帖 子:8
专家分:6
注 册:2010-10-16
得分:0 
呵呵。 楼上的反了吧。  ref的调用前必须初始化。 out 传参的调用前可以不用初始化吧
2011-07-15 09:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-344943-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.064643 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved