美文网首页
C#数组参数问题

C#数组参数问题

作者: 暗夜晴空 | 来源:发表于2017-08-09 14:45 被阅读0次
    class TestArray
    {
        public TestArray()
        { 
            m_bytelist = new List<byte>();
        }
        private List<byte> m_bytelist;
        
        private byte[] getBytes()
        {
            m_bytelist.Add(12);
            m_bytelist.Add(11);
            m_bytelist.Add(10);
            return m_bytelist.ToArray();
        }

        private void setBytes( byte[] buffTemp) 
        {
            Array.Resize(ref buffTemp, 4);
            buffTemp[0] = 0;
            buffTemp[1] = 1;
            buffTemp[2] = 2;
            buffTemp[3] = 3;

            foreach (byte byteTemp in buffTemp)
            {
                Console.WriteLine("setbyte[]:{0}", byteTemp);
            }
        }

        public void println() 
        {
            byte[] buffTemp = getBytes();
            setBytes(buffTemp);
            Array.Resize(ref buffTemp, 2);
            foreach (byte byteTemp in buffTemp) 
            {
                Console.WriteLine("byte[]:{0}", byteTemp);
            }

            foreach (byte byteTemp in m_bytelist)
            {
                Console.WriteLine("list:{0}",byteTemp);
            }
        }
    }

输出:setBytes( byte[] buffTemp)传递数组参数不改变原来数组的值,重新生成一份新的数组。m_bytelist.ToArray()同样生成一份新的数组。

setbyte[]:0
setbyte[]:1
setbyte[]:2
setbyte[]:3
byte[]:12
byte[]:11
list:12
list:11
list:10

延伸:setBytes( ref byte[] buffTemp) 使用引用类型传递的是当前的数组,会改变原本的值。

setbyte[]:0
setbyte[]:1
setbyte[]:2
setbyte[]:3
byte[]:0
byte[]:1
list:12
list:11
list:10

相关文章

  • C#数组参数问题

    输出:setBytes( byte[] buffTemp)传递数组参数不改变原来数组的值,重新生成一份新的数组。m...

  • C# 中的参数数组、引用参数和输出参数

    参数数组 在C#中,可以为函数指定一个不定长的参数,这个参数是函数定义中的最后一个参数,这个参数叫做参数数组。 下...

  • C#的Main方法

    c#要求Main方法返回void或int,而且要么无参,要么接收一个字符串数组。 args参数是用于接收命令行参数...

  • C#参数传递,ref、out和params

    最近换工作面试,遇到了一个基础的坑,是关于C#参数传递的问题。 参数传递主要分两种,值传递和引用传递。实际C#还提...

  • 引用类型的参数加不加Ref的区别

    问题描述:引用类型的参数加不加Ref的区别? 解答 备注:C#高级编程(第10版) 3.6.1 ref参数(92页...

  • C# 10.0 空参数检查

    C# 10.0 空参数检查 说明 原先写法 你只需要在参数名称末尾添加“!!”,C#就会自动加入这种空参数...

  • 数组笔记

    #数组 一.C#中的数组 (一)数组的存储 在C...

  • 数组参数: 参数数组: 注: 参数数组与数组参数的不同,在于函数的调用,调用参数数组的函数的时候,我们可以传递过...

  • .NET调用C++ DLL时遇到的问题及解决办法

    一、问题:C#调用C++的DLL 出现:“尝试读取或写入受保护的内存”C#的函数声明如下: 这里的返回参数是str...

  • C#:树型数组,分级模糊查询

    C#:树型数组,分级模糊查询

网友评论

      本文标题:C#数组参数问题

      本文链接:https://www.haomeiwen.com/subject/xntqrxtx.html