this指针的问题

struct A()

{

  private()

  {

    this = new A();

  }

}

 

class A()

{

  private()

  {

    this = new A();//编译报错

  }

}

 

对于值类型,因为它就是栈上的数据,所以给这个指针赋值也就是把数据复制到栈的这个位置,因为位置并没动,上层调用也不会出问题.

对于引用类型,外面持有这个类的指针,里面根本不知道谁持有我,也没法改持有我的人对我的指针.

posted on 2011-11-24 17:29  理想Ideal  阅读(127)  评论(0编辑  收藏  举报

导航