【发布时间】:2021-08-03 20:06:18
【问题描述】:
我正在尝试将 std::shared_ptr<Node> 转换为 std::shared_ptr<Node3D>
auto node3d = static_cast<std::shared_ptr<Node3D>>(node);
我遇到了一个错误:
E0312 no suitable user-defined conversion from "std::shared_ptr<Node>" to "std::shared_ptr<Node3D>" exists
【问题讨论】:
-
如果您提供更多背景信息(例如minimal reproducible example),您的问题将会得到改善。特别是,
Node和Node3D之间的关系缺失。 -
这有点重复,但标题使用了向下转换,这阻碍了人们找到它。
标签: c++ shared-ptr smart-pointers static-cast