gpt4 book ai didi

c++ - 没有对象错误不能调用成员函数

转载 作者:行者123 更新时间:2023-11-28 00:33:41 25 4
gpt4 key购买 nike

我在 ClassA 中有一个静态 funcA,它调用 classA 中的非静态 funcB。尽管我为 funcB 调用提供了对象,但我仍然收到错误:无法在没有对象的情况下调用成员函数

void* ClassA::funcA(void *arg)
{
ClassA *pC = reinterpret_cast<ClassA *>(arg);

funcB(pc);
}

void* ClassA::funcB(ClassA *arg)
{

}

这是什么原因?

最佳答案

可以在没有对象的情况下调用静态类方法,就像您正在做的那样。
需要在对象上调用常规类方法,如下所示:objectInstance.classMethod( arguments go here )objectPointer->classMethod( arguments go here )

试试这个(在你的类声明中更改 funcB 的签名以匹配之后):

void* ClassA::funcA(void *arg)
{
ClassA *pC = reinterpret_cast<ClassA *>(arg);

pC->funcB();
}

void* ClassA::funcB()
{
...
}

关于c++ - 没有对象错误不能调用成员函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21775796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com