国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

c#ref與out的區別

2019-11-14 13:31:14
字體:
來源:轉載
供稿:網友

相同點:都是輸出參數

不同點:

ref:

1、必須初始化,即:必須賦初始值;

2.有進有出;

3、用在需要被調用的方法修改調用者的引用的時候。

4、是傳遞參數的地址

out:

1.不需要初始化,即:不需要賦初始值;

2、只出不進;

3、用在需要retrun多個返回值的地方;

4、返回值;

通過代碼更直觀的看出它們的區別:

class PRogram    {        static void Main(string[] args)        {          //num1,num2,必須賦值            int num1 = 10;            int num2 = 5;            Exchage(ref num1,ref num2);//調用方法,必須在變量前,必須加ref關鍵字                }  /// <summary>        /// 使用ref方法,參數必須加ref關鍵字        /// </summary>        /// <param name="num1"></param>        /// <param name="num2"></param>        private static void Exchage(ref int num1,ref int num2)        {            //交換前                Console.WriteLine("num1的值:{0};num2的值:{1}", num1, num2);                int temp = num1;                num1 = num2;                num2 = temp;                //交換后                Console.WriteLine("num1的值:{0};num2的值:{1}", num1, num2);                Console.ReadKey();        }

  

class Program    {        static void Main(string[] args)        {        int sum;//不需賦值,即使賦值,也會被覆蓋            NumSum(10,5,out sum);            Console.Write(sum);            Console.ReadKey();        }   /// <summary>        /// 求和        /// </summary>        /// <param name="num1"></param>        /// <param name="num2"></param>        /// <param name="sum"></param>        private static void NumSum(int num1,int num2,out int sum)        {            sum = num1 + num2;        }}

  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 左权县| 子长县| 沧州市| 绥宁县| 涟水县| 夏河县| 遂平县| 米脂县| 黑山县| 方正县| 广丰县| 南召县| 深泽县| 上虞市| 沽源县| 兰州市| 新野县| 墨竹工卡县| 德江县| 禹城市| 拜城县| 晋江市| 皮山县| 迁西县| 沧州市| 新疆| 大埔县| 黔东| 延庆县| 房产| 从江县| 新兴县| 青浦区| 河东区| 小金县| 新绛县| 故城县| 芜湖县| 峨山| 大竹县| 都匀市|