首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

this指针有关问题

2012-03-17 
this指针问题我在构造函数成员初始列表中想传个该类的指针怎么办?CA():m_par(this) //this不可以,因为还没

this指针问题
我在构造函数成员初始列表中想传个该类的指针怎么办?

CA():m_par(this) //this不可以,因为还没构造出来,有什么替代的办法?
{
}

[解决办法]
构造之后,改用SetThisPtr()成员函数来做。
[解决办法]
忘记删东西了,这个为准

C/C++ code
CA(){    m_par = this;}
[解决办法]
那就构造后使用
[解决办法]
可以测试下:
C/C++ code
#include <iostream>   using namespace std;class Data   {   public:     Data(int i = 0) : value(i), __this(this){}    Data *__this;    int value;   };     int main()   {       Data d;     cout<<&d<<endl<<d.__this<<endl;    system("pause");    return 0;   }
[解决办法]
//this不可以,因为还没构造出来,有什么替代的办法?
this作为一个指针值,它已经初始化好了,但是this指向的东西还没初始化结束。
如果你真的只需要这个指针值,没问题,就这么用就可以了。
[解决办法]
探讨
//this不可以,因为还没构造出来,有什么替代的办法?
this作为一个指针值,它已经初始化好了,但是this指向的东西还没初始化结束。
如果你真的只需要这个指针值,没问题,就这么用就可以了。

热点排行