• 当心那些视觉上不易分辨的操作符发生书写错误


    当心那些视觉上不易分辨的操作符发生书写错误。

    我们经常会把“==”误写成“=”,象“||”、“&&”、“<=”、“>=”这类符号也很 容易发生“丢 1”失误。

    然而编译器却不一定能自动指出这类错误。

     1 #include <iostream>
     2 #include <set>
     3 
     4 using namespace std;
     5 
     6 //创建multiset模板的实例
     7 typedef multiset<int> MULTISET_INT;
     8 
     9 //put_HTset函数,从头向尾显示multiset容器的所有元素
    10 void put_HTset(MULTISET_INT set1,char *name)
    11 {
    12     MULTISET_INT::iterator it;
    13 
    14     cout<<name<<": ";
    15     cout<<"Head to Tail=";
    16     for (it=set1.begin();it!=set1.end();++it)
    17         cout<<(*it)<<" ";
    18     cout<<endl;
    19 }
    20 
    21 //put_THset函数,从尾向头显示multiset容器的所有元素
    22 void put_THset(MULTISET_INT s1,char *name)
    23 {
    24     MULTISET_INT::reverse_iterator i;
    25 
    26     cout<<name<<": ";
    27       cout<<"Tail to Head=";
    28     for (i=s1.rbegin(); i!=s1.rend();i++)
    29         cout <<(*i) <<" ";
    30     cout<<endl;
    31 }
    32 
    33 //测试multiset模板
    34 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    35 
    36 int main(int argc, char** argv) {
    37         int i;
    38     //声明multiset的对象和迭代器
    39     MULTISET_INT s1;      //容器初始尾空
    40     MULTISET_INT::iterator it;
    41 
    42     //向s1对象中插入值
    43     for (i=1;i<20;i=i+2) {
    44         s1.insert(i);
    45     }
    46 
    47     //正向显示s1中的数据
    48     put_HTset(s1,"s1");
    49 
    50     //反向显示s1中的数据
    51     put_THset(s1,"s1");
    52 
    53     //构造含有元素的序列并显示
    54     MULTISET_INT s2(s1);
    55     put_HTset(s2,"s2");
    56 
    57     //删除s2的第2个元素并显示
    58     s2.erase(++s2.begin());
    59     put_HTset(s2,"s2");
    60 
    61     //向s2插入8和9并显示
    62     s2.insert(8);
    63     s2.insert(9);
    64     put_HTset(s2,"s2");
    65 
    66     //清空s2的序列
    67     s2.clear();
    68     put_HTset(s2,"s2");
    69 
    70     //按键给定的区间显示序列中的元素
    71     cout<<"[s1.lower_bound(5),s1.upper_bound(15)] :";
    72     for (it=s1.lower_bound(4);it!=s1.upper_bound(16);it++)
    73         cout<<(*it)<<" ";
    74     cout<<endl;
    75 
    76     //显示s1的状态信息
    77     cout<<"s1.size():"<<s1.size()<<endl;
    78     cout<<"s1.max_size():"<<s1.max_size()<<endl;
    79     cout<<"s1.count(15):"<<s1.count(15)<<endl;
    80 
    81     //交换两个multiset容器的元素并显示
    82     s1.swap(s2);
    83     put_HTset(s1,"s1");
    84     put_HTset(s2,"s2");
    85 
    86     //关系运算
    87     s1.insert(2);
    88     put_HTset(s1,"s1");
    89     put_HTset(s2,"s2");
    90     cout<<"s1>s2 = "<<(s1>s2)<<endl;
    91     return 0;
    92 }
  • 相关阅读:
    JSP九大内置对象的作用和用法总结(转)
    Java web的几种异常处理 (转)
    response.getWriter().write()与out.print()的区别(转)
    【JavaWeb】Session(转)
    java web中cookies的用法 转
    1123
    1120
    jsp 内置对象
    include与jsp:include区别
    11.24作业1
  • 原文地址:https://www.cnblogs.com/borter/p/9417950.html
Copyright © 2020-2023  润新知