C++ Standard Template Libaray(STL)迭代器演示源代码

#include 
#include 
#include 
#include 
using namespace std;
template 
void fun1(ta a, ta b, tb c) /*a,b*/
{
    vector  v1(a,b);  
    sort(v1.begin(), v1.end());    //算法参数尽量使用迭代器
    copy(v1.begin(), v1.end(), c);
};

int main()
{
    int sz[5] = { 5,2,3,4,1 };
    fun1>(sz, sz + 5, ostream_iterator(cout, " "));
    cout << endl;
    fun1,ostream_iterator>(istream_iterator(cin),istream_iterator(),ostream_iterator(cout," "));
    cout << endl;
}

我觉得需要注意的地方有:

1:sort,copy这些STL算法模板函数的参数最好使用迭代器,就是那种自带的迭代器,不是自己定义的那种。我是说尽量。

2:调用模板的时候后面2个参数可以省略。

C++ Standard Template Libaray(STL)迭代器演示源代码_第1张图片

3:在输入数据的时候每个数字之间要使用空格隔开,否则会被识别为同一个数字,就不会排序了。

4:输入完全部数字后使用CTRL+Z 然后再使用enter键结束输入,这是所有标准输入流结束的结束方式

5:你现在要怎么感谢我

你可能感兴趣的:(c++,算法,开发语言)