gpt4 book ai didi

c++ - 是否可以确定传递的迭代器是否属于关联标准容器?

转载 作者:太空狗 更新时间:2023-10-29 23:10:28 27 4
gpt4 key购买 nike

我想从传递给函数的迭代器中确定标准容器类型(至少是关联的或线性的)。

我已经搜索了合适的迭代器特征和类型特征,但没有成功。

template <typename RangeIter, typename InputIter>
inline bool filter(RangeIter in_data, InputIter result)
{
...
/* determine the container types here - but how?!? */
std::copy_if(in_data.first, in_data.second, result, /* some predicate code here*/);
...
}

最佳答案

没有。 (好的,这对于 StackOverflow 来说可能有点太短了)。

无法确定迭代器引用的“容器”,因为它们根本不需要引用容器。

例子:

int foo, bar;
std::copy(&foo, &foo+1, &bar);

在此示例中,传递给 std::copy 的迭代器均未引用“容器”。

关于c++ - 是否可以确定传递的迭代器是否属于关联标准容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57558459/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com