小编use*_*462的帖子

std::vector<std::unique_ptr<UnimplementType>> 编译错误

我的代码出现错误。\n我在类 <RenderPass> 中使用前向声明,std::unique_ptr<RenderPass> 工作良好。但是 std::vector<std::unique_ptr<RenderPass>> 会导致编译错误。\n以前有人遇到过这种情况吗?谢谢\xef\xbc\x81

\n
class RenderPass;\n\nclass RenderSystem final\n{\npublic:\n    RenderSystem() = default;\n    ~RenderSystem();\n\nprivate:\n    std::unique_ptr<RenderPass> c {} // work;\n    std::vector<std::unique_ptr<RenderPass>> m_render_passes {} // compile error:  error C2338: static_assert failed: 'can't delete an incomplete type';\n
Run Code Online (Sandbox Code Playgroud)\n

c++ memory smart-pointers

1
推荐指数
1
解决办法
122
查看次数

标签 统计

c++ ×1

memory ×1

smart-pointers ×1