vector<vector<int>> input{ { { 1, 2 },{ 3, 4 } } };
auto result = input | boost::adaptors::transformed([](const auto& _) {return _; });
result.begin()->begin() == result.begin()->end();
如果我使用 VS2015 运行此程序_ITERATOR_DEBUG_LEVEL=2
,则会在以下位置触发此错误_Compat(const _Myiter& _Right)
:
_DEBUG_ERROR("vector iterators incompatible");
这很重要,因为展平迭代器在advance_past_empty_inner_containers()
.
这是怎么回事?我如何解决它?