zoukankan      html  css  js  c++  java
  • cb44a_c++_STL_算法_删除_(2)remove_copy_remove_copy_if

    cb44a_c++_STL_算法_删除_(2)remove_copy_remove_copy_if

    remove_copy()//在复制过程中删除一些数据
    remove_copy_if()


    删除性算法:
    remove()
    remove_if()
    remove_copy()
    remove_copy_if()
    unique()
    unique_copy()

    error C2760: 语法错误: 意外的令牌“标识符”,预期的令牌为“;”
    vs2017打开项目工程----> 属性 ---> c/c++ --> 语言 --> 符合模式 修改成否即可

    error C2039: “push_back”: 不是“std::multiset<int,std::less<int>,std::allocator<_Ty>>”的成员


    error C3861: “inserter”: 找不到标识符,需要包含#include <iterator>

    error C2955: “std::ostream_iterator”: 使用 类 模板 需要 模板 参数列表
    少了<int> , std::stream_iterator<int>(cout," ");
    bind2nd(less<int>(),4));预定义函数适配器

     1 /*cb44a_c++_STL_算法_删除_(2)remove_copy_remove_copy_if
     2 
     3 remove_copy()//在复制过程中删除一些数据
     4 remove_copy_if()
     5 
     6 
     7 删除性算法:
     8 remove()
     9 remove_if()
    10 remove_copy()
    11 remove_copy_if()
    12 unique()
    13 unique_copy()
    14 
    15 error C2760: 语法错误: 意外的令牌“标识符”,预期的令牌为“;”
    16 vs2017打开项目工程----> 属性 ---> c/c++ --> 语言 --> 符合模式 修改成否即可
    17 
    18  error C2039: “push_back”: 不是“std::multiset<int,std::less<int>,std::allocator<_Ty>>”的成员
    19 
    20 
    21  error C3861: “inserter”: 找不到标识符,需要包含#include <iterator>
    22 
    23  error C2955: “std::ostream_iterator”: 使用 类 模板 需要 模板 参数列表
    24  少了<int> , std::stream_iterator<int>(cout," ");
    25  bind2nd(less<int>(),4));预定义函数适配器
    26 */
    27 #include <iostream>
    28 #include <algorithm>
    29 #include <vector>
    30 #include <list>
    31 #include <set>
    32 #include <functional>//使用到了less<int>(),预定义函数对象
    33 #include <iterator>
    34 
    35 using namespace std;
    36 template <typename TT1>
    37 void print(TT1 &ilist)
    38 {
    39     for (TT1::iterator iter = ilist.begin(); iter != ilist.end(); ++iter)
    40         cout << *iter << ' ';
    41     cout << endl;
    42 }
    43 
    44 int main()
    45 {
    46     list<int> ilist;
    47     for (int i = 1; i <= 6; ++i)
    48         ilist.push_back(i);
    49     for (int i = 1; i <= 9; ++i)
    50         ilist.push_back(i);
    51     print(ilist);
    52 
    53     multiset<int> iset;
    54     cout << "把ilist里面小于4的数据放入multiset容器里面,其它数remove掉,删除掉" << endl;
    55     remove_copy_if(ilist.begin(),ilist.end(),inserter(iset,iset.end()),bind2nd(less<int>(),4));
    56 
    57     print(iset);
    58 
    59     cout << "用输出流迭代器输出,一边复制,一边删除3,最后输出到cout" << endl;
    60     remove_copy(ilist.begin(),ilist.end(),ostream_iterator<int>(cout," "),3);
    61 
    62     cout << "用输出流迭代器输出,一边复制,一边删除大于4的数,最后输出到cout" << endl;
    63     remove_copy_if(ilist.begin(), ilist.end(), ostream_iterator<int>(cout," "), bind2nd(greater<int>(), 4));
    64 
    65     return 0;
    66 }
    欢迎讨论,相互学习。 txwtech@163.com
  • 相关阅读:
    交叉编译
    CompactPCI之系统管理设计与应用
    羽毛球发球规则
    记忆里第一次看孙淳演的电视剧——《浦江叙事》
    理财工具——七大标准比率
    samba常见问题
    Samba配置文件常用参数详解
    samba安装和简单配置
    mdadm中文man帮助
    说一说羽毛球的几种概念
  • 原文地址:https://www.cnblogs.com/txwtech/p/12360894.html
Copyright © 2011-2022 走看看