stl函数对象和算法的区别

函数对象和算法都是函数,有什么区别,我知道的区别是函数对象主要处理一个元素,而算法主要处理区间实质是循环语句,请问它们本质区别是什么?

算法是提供了一系列运算功能,比如sort排序,find查找等。而函数对象是一个对象,在算法函数中,比如sort等,它能够支持函数对象作为一个参数来提供自己定制化的功能,比如sort可以使用你函数对象自己定义的比较的逻辑。

STL算法和函数对象 #include

1. find() 在一个迭代器区间内查找一个特定元素,可以对任何类型容器的元素使用此算法。它会返回一个指示所找到元素的迭代器,或者是区间的末尾迭代器,可以查找容器中元素的一个子区间。
vector::iterator it = find(myVector.begin()+1,myVector.end(),num);
2. find_if()......
答案就在这里:STL算法和函数对象
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

算法是解决问题的方法,和函数没有关系。算法抽象独立于语言,而函数是编程语言的一个概念。