有什么方法可以找到迭代器指向的容器?具体来说,我希望能够找到std::vector
特定对象所指向的对象,std::vector::iterator
以便我可以检查范围,而不必实际传递对该向量的引用。
如果(我怀疑)答案是否定的,为什么不呢?
编辑:感谢您提供一些快速且(大部分)准确的答案。埃文·特兰 (Evan Teran ) 做到了。我根本没有考虑优化,但现在很明显。
有几个人问我想这样做是为了什么。这没什么特别重要的。我有一个用向量和指向向量的迭代器初始化的对象。如果我可以只使用迭代器来初始化对象,那将是既可爱又方便的,因为这样我就可以将vector::iterator
s 直接转换为该对象(这听起来很奇怪,但在特定情况下确实有意义)。但这根本不是关键。