提取可变参数模板参数包并将其用于类型特征元函数中的另一个可变参数模板中?
我想确定是否有任何可变参数类模板是另一个类的基础。通常我会使用 std::is_base_of,但我认为我的用例不适合,并且我不确定 std 或 boost 中是否已经…
递归创建 std::map 的 std::map
我想知道做这样的事情的最好方法或更好的方法: template <int N,typename T,typename X> class MyMap : public map<T,MyMap<N-1,T,X>>{}…
boost::mpl::vector - 获取类型的基址偏移量
在执行 mpl::find 后是否可以获取 mpl::vector 的偏移量? 换句话说,我想做的编译时等效: #include <vector> #include <algorithm> #includ…
将类模板实例化与其基类模板进行比较时 is_same 返回 false?
*编辑:不知何故,我认为编译器正在创建 B 就像 A 一样,导致我假设 is_same 应该如何评估它们,无论继承/派生。我的不好:(对后续的误解表示抱歉:\ * …
Boost MPL 生成对象序列化代码?
我想 class Object { string a int b long c char d } 通过查看 mpl 序列来生成序列化/反序列化代码,但我需要能够识别对象并将其检索回来,我不知道…
Boost MPL 模板列表
我想要获取类模板的列表,T1,T2,... TN 和有一个 MPL 类列表,其中每个模板都使用相同的参数进行实例化。 boost::mpl::list 不能与模板模板参数列表…
C++0x 嵌套初始值设定项列表
我想使用 C++0x 新的初始值设定项列表功能来初始化 std::vector,其中包含我当前正在开发的新 API 的编译时定义的项目数。像这样的事情: template<…
带有模板类型的模板化模板参数列表
C++ 允许这样的模板化模板参数: template <template <bool> class T> struct something1 {} Bool 类型可以替换为 typedef(因此不需要原始类…
在 C++ 中可能吗?循环抽象类的所有子类?
我有一个带有几个子类的 C++ 抽象类。 是否可以通过宏或模板元编程以某种方式执行类似的操作: foreach subclass of Base: mymap[subclass::SOME_CONS…
在 C++0x 中创建静态类型变体
我想知道,是否可以在 C++0x 中创建静态类型变体(其行为类似于 auto): variant<int, bool, std::string> v = 45 当我们将 v 分配给 int 以外的…
Vector在C++中的实现
我最近编写了一个 STL Vector 的实现作为编程练习。该程序可以编译,但我收到一个奇怪的错误: terminate called after throwing an instance of 'std…