2010-10-15 38 views
0

我想在C++中使用Glut,但是当我尝试在Renderer类中放置显示函数时遇到了问题。使用过剩显示器有问题

我有错误是: 错误C2227:左 ' - >显示' 必须指向类/结构/联合/通用型

到目前为止,我有以下几点:

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 
} 

我不知道我在做什么错:(

感谢所有帮助!

回答

1

如果staticDisplay是静态函数(顾名思义),你CA不能访问gRenderer,它是一个成员变量。你需要一个类的实例来做到这一点,而静态方法没有。