zoukankan      html  css  js  c++  java
  • .Net中引用类型按值参数引用的问题

    .net 中方法参数的参数特性为值参数,实际传入的为引用类型(特殊引用类型String除外,但是字符串数组包括在内,因为数组是引用类型)时,方法体可以改变引用对象的数据成员,但是不能改变引用对象本身。

    如果参数特性为引用参数,不管传入的是值类型还是引用类型,方法体将会改变引用对象的数据成员,也可以改变引用对象本身。

     请看以下代码:

        class Program
        {
            
    static void Main(string[] args)
            {
                
    int[] I1 = new int[1] { 1 };
                ChangI1(
    ref I1);
                
    //I1[0]=199;

                
    int[] I2 = new int[1] { 1 };
                ChangI2(I2);
                
    //I2[0]=199;

                
    int[] I3 = new int[1] { 1 };
                ChangI3(I3);
                
    //I3[0]=1000;         
            }
     

            
    static void ChangI1(ref int[] i)
            {
                i[
    0= 1000;
                i 
    = new int[1] { 199 };
             }

            
    static void ChangI2(int[] i)
            {
               i 
    = new int[1] { 199 };
            }


            
    static void ChangI3(int[] i)
            {
                i[
    0= 1000;
                i 
    = new int[1] { 199 };
            }
        }
  • 相关阅读:
    Python中的sorted函数以及operator.itemgetter函数
    a=a+(a++);b=b+(++b);计算顺序,反汇编
    带基虚类的构造函数执行顺序
    开源系统管理资源大合辑
    linux的LNMP架构介绍、MySQL安装、PHP安装
    lamp下mysql安全加固
    ITSS相关的名词解释
    从苦逼到牛逼,详解Linux运维工程师的打怪升级之路
    Linux 文件系统概览
    Exchange2010批量删除邮件
  • 原文地址:https://www.cnblogs.com/liaohuqiu/p/1683305.html
Copyright © 2011-2022 走看看