范围算法和标准算法之间的区别

哈里:

许多标准库算法在C ++ 20中具有两个版本:一个在std名称空间中,另一个在std::ranges名称空间中具有相同的名称。例如,std::ranges::countstd::count都用于计算满足谓词的元素的数量。

为什么这些算法有两个版本?

尼科尔·波拉斯(Nicol Bolas):

范围功能将C ++ 20概念添加到迭代器和范围,并将其算法等的定义限制在这些概念上。但是,C ++ 20概念与C ++ 17命名要求不同的要求。通常,满足C ++ 17要求的类型将满足C ++ 20概念的等效要求,但并非在所有情况下都满足尽管通常很容易更新代码以使其对C ++ 20概念有效,但仍会破坏向后兼容性,使用户的代码仅停止在C ++ 20中进行编译即可。

因此,他们没有向用户强加约束算法,而是创建了新算法,您可以选择使用这些新算法。因此,没有代码损坏。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

标准缩放器和MinMaxScaler之间的区别

#strings和标准String方法之间的区别

生成算法和判别算法有什么区别?

散列和加密算法之间的根本区别

这些删除列表项算法之间的区别

寻找最短路径时,BFS和Dijkstra算法之间有什么区别?

二次和二次算法之间的区别

随机算法与启发式算法之间的区别

“ wait-die”和“ wound-wait”死锁预防算法之间有什么区别?

Bellman-ford和Floyd warshall算法之间的基本区别是什么?

解释这些中点算法之间的区别

算法和伪代码之间的核心区别是什么?

在Python 3中,尾随小数点> = 0.5时math.ceil()和round()之间的算法区别是什么?

JWT RS256,RS384和RS512算法之间有什么区别?

这两种算法之间的区别

输出AMS草图和计数草图算法之间的区别

Python中的Powerset算法:列表上的+和追加之间的区别

标准库算法可平均相邻元素之间的差异

神经网络框架和RL算法库之间有什么区别?

贪婪算法与动态算法之间的区别以及分治法

算法识别(标准)

最短路径与Djikstra算法和旅行商之间的区别

为什么Add12和Kahan的求和算法之间有区别?

MOG和GMM算法之间有区别吗?还是一样?

独特的表单算法和独特的列表容器之间有什么区别?

对齐的malloc和标准malloc之间的区别?

通用算法与传统算法的区别

这些算法表示之间的区别?

串行算法和并行算法有什么区别?