gpt4 book ai didi

c++ - 抽象基类(成员变量)的 shared_ptr 是一个未声明的标识符

转载 作者:搜寻专家 更新时间:2023-10-31 00:32:15 29 4
gpt4 key购买 nike

<分区>

以下结构应该包含一个指向抽象基类 (Shape) 的 shared_ptr。但是,当我尝试编写此代码时,出现了 error C2065: 'Shape' : undeclared identifier

所以我知道我不能创建 Shape 的实例,只能创建派生 Spheres、Boxes 等的实例。但是为什么我不能将 shared_ptr 用于抽象基类?

#include <memory>  // std::shared_ptr

#include "shape.hpp"

struct Hit {
// …

std::shared_ptr<Shape> m_shape; // Shape that was hit
};

应该注意的是,Shape 类确实使用了 Hit 结构,反之亦然。

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