C++ 通过此指针从静态函数调用类函数
当作为参数传递给静态函数时,是否可以通过C++ 通过此指针从静态函数调用类函数,c++,C++,当作为参数传递给静态函数时,是否可以通过this调用类函数 这就是在类Foo中调用函数的方式 Foo::Bar(this, NULL); 这是我希望通过在参数结构中传递This来调用它的方式: void Foo::someFunction() { BarArgs barArgs; barArgs.context = this; ... Retry(barArgs); } static void Retry(LPVOID args) { BarArgs
this
调用类函数
这就是在类Foo中调用函数的方式
Foo::Bar(this, NULL);
这是我希望通过在参数结构中传递This
来调用它的方式:
void Foo::someFunction()
{
BarArgs barArgs;
barArgs.context = this;
...
Retry(barArgs);
}
static void Retry(LPVOID args)
{
BarArgs *pstBarArgs = (BarArgs *)args;
(pstBarArgs->context)->Bar(pstBarArgs->context, NULL);
}
如果要在
Retry
中引用args
作为指向BarArgs
的指针,则调用变量时必须像这样传递该变量的地址:Retry(&BarArgs)代码>
然后它应该可以正常工作。重试(barArgs)代码>传递地址:重试(&barArgs)代码>