gpt4 book ai didi

c++ - 指向可能存在或不存在的对象的指针 vector

转载 作者:太空狗 更新时间:2023-10-29 20:05:11 26 4
gpt4 key购买 nike

问题是:我正在使用 SFML 制作游戏,我想要一个 sf::Drawable* vector ,所以我可以简单地执行 windowManager.add(randomGameSprite),但我遇到的问题是我想能够拥有它,这样我就可以删除 randomGameSprite,而无需手动从窗口中删除指针。有没有办法让它在尝试绘制之前检查对象是否存在?

我正在使用 C++11,但从我的尝试来看,智能指针在这方面没有太大帮助。我尝试使用 std::shared_ptr,但它使可绘制对象保持事件状态。

最佳答案

您可以存储 weak_ptr<T> 在你的 vector 中。弱指针不会使对象保持事件状态:如果指向对象的所有共享指针都超出范围,弱指针将自动失效。

关于c++ - 指向可能存在或不存在的对象的指针 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14859643/

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