繁体   English   中英

如何将sf :: RenderWindow传递给另一个函数?

[英]How do I pass a sf::RenderWindow to another function?

假设我在C ++ SFML中有如下代码;

void eventManager(sf::RenderWindow window)
{
    event evnt;
    window.pollEvent(evnt);
    if (evnt.type == sf::Event::Closed)
        window.close();
}

int main()
{
    sf::RenderWindow window(sf::VideoMode(500, 500), "Window");
    eventManager(window);
}

当我尝试编译这样的内容时,调试器发出一条错误消息,提示“试图引用已删除的函数”。 我现在知道不能将sf :: RenderWindow传递给另一个函数,那么有什么更好的方法呢?

Alter Igel在评论中告诉我如何进行此操作,因此我想将其发布为答案,以便可以将其关闭(谢谢伙计!)

我需要这样声明函数;

 eventManager(sf::RenderWindow& window)

我假设&让编译器知道它正在引用窗口,而不是复制它。 再次感谢Alter Igel。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM