【发布时间】:2020-06-28 04:30:19
【问题描述】:
由于大小的原因,为相关函数创建模板化重载不是一个可行的解决方案,所以有没有办法在不使用模板和 enable_if 等的情况下检查迭代器是否是随机访问???
例如 - 类似:
if (std::iterator_traitzzz<it>::the_type == random_access_yo)
{
DO THE THING
}
编辑:This answer 是佳能之一,我认为,虽然 R Sahu 的下面的一个也不错。
【问题讨论】:
-
抱歉错误标记。我添加了另一个标志来解释它。您能否添加模板帖子并指出它不是您想要的解决方案?
-
@LouisGo 对不起,完全是我的错-我没有阅读该页面上的第二个答案,并且错过了非模板答案。随意重新标记为重复,但 R Sahu 的解决方案也适用于此,尽管在非随机访问迭代器上使用 make_move_iterator 时它会失败。
-
你的意思是这个答案吗? stackoverflow.com/a/47994437/4123703您可以编辑您的帖子以包含链接,因为您的问题更容易搜索。
-
好点 - 我会的。