C#定义了一个int[] buff = new int[100],那么ref buff[0]代表什么,是数组首地址吗?
若干要将这个数组的首地址传递给一个ref int型的参数,ref buff[0]可以传递吗吗c#ref int

解决方案 »

  1.   

    c# 定义不存在地址的概念,ref buff[0]只是类似于地址指向引用表现,当你修改buff[0]里的值时,确实是修改了buff[0]指向的某一段内存里的值,如果不加ref,那么修改buff[0]指向的值,并非真正意义上修改,而是另外开一段内存保存新的值,并把新地址赋给buff[0]
      

  2.   

    直接传递buf[0],其实就是传递一个int变量,这样函数中使用的是变量的副本,变量本身的内容不会被改变,如果是会用ref,那就是引用传递,变量的值 会被修改
      

  3.   

    最终解决办法:改OCX里的接口怎么改接口,可以参考下面链接
    http://blog.csdn.net/diaoying/article/details/8549964