我只是在阅读一篇关于 C++ 概念(即 C++20)的(印刷的,德语的)文章。
文章给出了一个函数模板的例子,使用的Sortable
概念:
template<typename Cont>
requires Sortable<Cont>()
void sort(Cont& container) { ... }
它声称编译器会拒绝以下代码:
std::list<int> lst = { 1, 7, 5, 12 };
sort(lst);
出现如下错误:
错误:lst 不是带有 < 的随机访问容器
假设这篇文章是正确的 - 为什么int值列表究竟是不可排序的?对我来说,整数列表就像考虑“可排序”事物时的典型示例?!
不,我不是在问std::sort。我在问:为什么 Sortable 的概念不适用于 a std::list<int>
?