• C#值传递和按引用传递


    知识点:

           值类型和引用类型

           为值类型,,据

           对于引用类型来说,栈中存储的是堆中对象的地址


           值传递和引用传递

           对于值传递,传递的是栈中保存的数据

           对于引用传递。传递的是栈本身的地址


    先看一下值传递(传递值类型和引用类型)   

    class Program
    {
        static void Main(string[] args)
        {
            //引用类型的赋值。仅仅是赋值了对象在堆中的地址
            Person p = new Person();   //声明的一个Person类,包括有Name属性
            p.Name = "yzk";
            D2(p);
            Console.WriteLine(p.Name);   //返回值为jk
    
            //值类型的赋值,赋值了详细的值,而不是地址
            int n = 10;
            D1(n);
            Console.WriteLine(n);       //返回值为10
            Console.ReadKey();
        }
        //值类型的值传递
        static void D1(int m)
        {
            m = m + 1;
        }
        //引用类型的值传递
        static void D2(Person p1)
        {
            p1.Name = "jk";
        }
    }
    图解:


    再看一下引用传递(传递值类型和引用类型)   

    class Program
        {
            static void Main(string[] args)
            {
                Person p = new Person();   //声明的一个Person类,包括有Name属性
                p.Name = "jk";
                D2(ref p);      //引用传递:传递的是栈本身的地址
                Console.WriteLine(p.Name);   //返回值sk
    
                int n = 10;
                D1(ref n);       //引用传递:传递的是栈本身的地址
                Console.WriteLine(n);   //返回值11
                Console.ReadKey();
            }
            //值类型的引用传递
            static void D1(ref int a)  //ref就是表示引用传递
            {
                a = a + 1;
            }
            //引用类型的引用传递
            static void D2(ref Person per)
            {
                per = new Person();
                per.Name = "sk";
            }
        }
    图解



    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    npm publish 失败可能的原因记录
    nodejs版实现properties后缀文件解析
    CSS 毛玻璃效果
    echarts markLine 辅助线非直线设置
    sql 数据类型 建表时如何选择数据类型
    用row_nuber 分页的存储过程
    错误描述:未能找到路径“C:/”的一部分
    设置VS2010默认以管理员权限启动
    通过做nopcommerce电商项目对EF的理解(一)
    获取多表联合查询的存储过程。
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4672831.html
Copyright © 2020-2023  润新知