我正在尝试在 C++ 中使用 Glut,但是当我尝试将显示函数放在 Renderer 类中时遇到问题。
我的错误是: error C2227: '->display' 的左侧必须指向类/结构/union/泛型类型
到目前为止,我有以下内容:
class Renderer
{
public:
Renderer *gRenderer;
...
}
int Renderer::start(Renderer r)
{
...
setRenderer(r);
glutDisplayFunc(&Renderer::staticDisplay);
...
}
void Renderer::setRenderer(Renderer r){
*gRenderer = r;
}
void Renderer::staticDisplay(){
gRenderer->display();
}
void Renderer::display()
{
... show stuff
}
我不确定我做错了什么:(
感谢大家的帮助!
最佳答案
如果staticDisplay
是一个静态函数(顾名思义),您不能从它访问作为成员变量的gRenderer
。您需要一个类的实例来执行此操作,而静态方法则没有。
关于c++ - 使用过剩显示时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3940725/