int *p, i = 1;
p = &i;
-----------------------
以上是一个C语言的例子,通过对一个变量的引用可以
得到该变量的地址,并赋给一个指针p

解决方案 »

  1.   

    "在c++中,引用不能为空,且引用一旦被赋值就不能更改,也就是说其指向的地址不能再变更。" ?
    可以该吧? a=&b; a=&c; c#里,如果是引用地话,在堆中开辟一块区域保存对象实例,在堆栈中
    有个指针指向堆中的对象实例,而不会再指到堆栈上去.
    而如果是指针的话,在堆栈中保存的地址,应该可以指向堆栈,也可以指向堆.
      

  2.   

    psxfghost(哈哈)的说法我比较认可。
    但 5drush(五农民出狗狗) 说:引用是安全的指针 是什么意思?
    他们既然是不同的概念,怎么又这么说呢?
      

  3.   

    在非.NET中,引用和指什没有实质的区别.
    在.net中,托管代码中,引用和指什是有区别的.
    引用,是在.NET框架托管下的引用,而指针就不是了。是实际的地址。
    所以,两者是有区别的。
      

  4.   

    Take a look at this article.
    I think it will help a lot.
    http://www.cetinet.com/download/list.asp?id=90
      

  5.   

    在C#中,实际指针的存在是没有价值的,指针引用的是实际的地址,而引用引用的是对象实体CLR中的GC会不断变化指针,因为要回收单元.而引用的实体是安全的,这也就是5drush(五农民出狗狗) 引用是安全的指针.