gpt4 book ai didi

c++ - 将其转换为 std::shared_ptr

转载 作者:行者123 更新时间:2023-11-30 04:09:49 25 4
gpt4 key购买 nike

我在当前的代码库中遇到了一个小问题。我正在尝试实例化 ShockRenderSystem 类的新 std::shared_ptr。 ShockRenderSystem 的构造函数采用 ShockGame 类的 std::shared_ptr 和在本例中不相关的 sf::VideoMode。这是我正在尝试执行的代码(m_render_system 是一个 std::shared_ptr):

m_render_system = std::shared_ptr<ShockRenderSystem>(new ShockRenderSystem((static_cast<std::shared_ptr<ShockGame> >(this)), mode));

我正在尝试投 this到我可以传递给构造函数的 std::shared_ptr。请注意,此代码位于 ShockGame 的构造函数中。

我收到错误:no matching function for call to 'SE::ShockRenderSystem::ShockRenderSystem(std::shared_ptr<SE::ShockGame>*, sf::VideoMode&)' candidate is: SE::ShockRenderSystem::ShockRenderSystem(std::shared_ptr<ShockGame>, sf::VideoMode)

感谢所有帮助!

最佳答案

std::enable_shared_from_this 派生 ShockGame .

关于c++ - 将其转换为 std::shared_ptr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20940846/

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