c++ - 前向声明或继承 std::type_index
问题描述
我正在开发几个非常重的模块,我想提供轻量级的标头,只需要一些前向声明。同时,我std::type_index
在代码中使用以便在不同类型之间切换,因此必须在“前向声明”标题中引入这种类型。
为此,我有两个问题:1)做出像这样的前向声明有那么糟糕吗
namespace std { struct type_index; }
2)如果是 - 是否有任何理由不继承它,如下所示:
// light.hpp:
struct TypeID;
// heavy_implementation.hpp
struct TypeID : std::type_index {}; // just empty body
最后:如果这两个选项都容易出错和/或由于某种原因难以支持 - 是否有任何方法可以透明地(没有不透明类型)引入std::
类型type_index
,如轻量级标题?
解决方案
推荐阅读
- flutter - Moor Vs ObjectBox:用于复杂的 Flutter DB
- reactjs - 用猫鼬的值改变静态值
- api - 创建 Vend API 的初始步骤
- javascript - 如何在每次使用 JavaScript 的操作后叠加显示翻译结果容器?
- javascript - javascript中赋值表达式周围的括号有什么意义
- classification - 我有一个问题出现这个警告:分类器'AuthResult'没有伴随对象,因此必须在此处初始化
- javascript - Firefox javascript 控制台 - 是否可以从文件中执行 javascript?
- flutter - Refresh firebase token Flutter and RESTfull API
- php - 翻译和调整预计发货日期
- sql - 每天的运行总和