这是非Boost C ++ 11。对于两种不同类型的单个堆栈式容器,最佳选择是什么?像这个想象的场景一样起作用的东西:
template<typename T>
deque <pair<T, v8::Local<v8::Value>>> my_queue;
uint32_t aUint = ...;
v8::Local<v8::Value> value1 = ...;
v8::Local<v8::String> aString = ...;
v8::Local<v8::Value> value2 = ...;
my_queue.push_back(make_pair(aUint, value1));
my_queue.push_back(make_pair(aString, value2));
答案 0 :(得分:1)
以下代码使用std::experimental::any
执行此操作。
#include <experimental/any>
#include <deque>
int main()
{
std::deque<std::experimental::any> d;
d.push_back(1);
d.push_back(std::make_pair(3, 2));
}
我真的不知道这是否符合您的要求(显然不是严格的标准c ++ 11)。 FWIW,它使用g ++ - 5与--std=c++1y
构建。