如何std :: stort检查迭代器是否为std :: rando_access_iterator_tag?

问题描述 投票:0回答:1

我阅读,

std::sort
仅接受随机访问迭代器。因此,我希望在
sort
函数中找到代码,以确保仅接受随机访问迭代器,但找不到任何。

为什么

std::sort

只能随机访问迭代器?我想念什么吗?
我使用MSVC STL与C ++17.

迭代器是随机访问迭代器的要求。如果迭代器传递给
c++ sorting iterator std
1个回答
0
投票
不符合指定要求的要求

legacyrandomAccessiterator

,则可能是否正常工作。 
std::sort
假设迭代器是一个随机访问迭代器,它不必明确检查它是一个。 
std::sort使用随机访问器支持的操作。如果迭代器不是随机访问器,这些操作可能会失败。
std::sort
可以检查列出的要求,但不必。它取决于您,以确保迭代器会遇到它们。 像您这样的工作,他们要求您能够高15m。在采访中,他们将进行通常的聊天,但他们不会检查您可以跳高。他们认为您可以,因为他们清楚地将其表示为工作的要求。在第一天,您必须跳跃而失败。故事的结尾;)。
	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.