如何传递this的问题写了个函数,通过typeid得到类名,可是如何传递this呢?
CString CMTypeInfo::CMGetName(这里如何写this参数呢?)
{
    CString strName(typeid(this).name());
    return strClassName;
}谢谢:)

解决方案 »

  1.   

    你在函数中不是都已经用过this了吗,this指针是隐式传进来的。类中除了静态函数
    外其余函数都会有一个隐含的this指针。但这个this指针不是通过压入栈来传递的,
    而是通过保存在ecx寄存器传递的。你可以查看编译后的汇编代码就看出来了。
      

  2.   

    同一个类的非静态函数调用时,this指针是隐式传递的,在函数里面直接用就可以。如果是其它情况想要把this作为参数传给其它函数,就直接写this就可以,必要时加上强制类型转换。