在C ++ 11中,是否存在类型为Name | LastName | someMoreData
aaa | bbb | ccc
ddd | eee | fff
aaa | bbb | ccc
的对象的行,它只存储迭代器而不知道迭代器源自哪个std容器,只有容器存储的数据类型?
如果这样的物体不存在,那么它缺席的原因是什么?
答案 0 :(得分:3)
C ++中没有迭代器的基类,因为它们是为高性能而设计的(因此不欢迎虚拟调用)。
所有迭代器类型都在编译时解析,所有“迭代器存储”类型也必须在编译时解析。
你的用例是什么?可能还有另一个更好的解决方案。
答案 1 :(得分:0)
不,没有常见的迭代器基类和类型擦除变通方法(如果在这种情况下甚至可能)只会推迟在某个地方存储类型的需要。
也许你应该重新思考一下你想要达到的目标并提出一个问题?