zoukankan      html  css  js  c++  java
  • 变量(指针、数组)被创建之后应当及时把它们初始化

    变量(指针、数组)被创建之后应当及时把它们初始化,以防止把 未被初始化的变量当成右值使用。

     1 #include <iostream>
     2 #include <string>
     3 #include <map>
     4 
     5 using namespace std;
     6 
     7 //创建map的实例,整数(int)映射字符串(string)
     8 typedef map<int, string> INT2STRING;
     9 
    10 //测试map容器
    11 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    12 
    13 int main(int argc, char** argv) {
    14     //创建map对象theMap
    15     INT2STRING theMap;
    16     INT2STRING::iterator theIterator,it;
    17 
    18     //向theMap容器中添入数据,数字和字符串配对
    19     //每个元素是一个映射对
    20     theMap.insert(INT2STRING::value_type(0,"Zero"));
    21     theMap.insert(INT2STRING::value_type(2,"Two"));
    22     theMap.insert(INT2STRING::value_type(4,"Four"));
    23     theMap.insert(INT2STRING::value_type(6,"Six"));
    24     theMap.insert(INT2STRING::value_type(8,"Eight"));
    25 
    26     //显示map容器的所有对象
    27     cout<<"theMap.begin()--theMap.end():"<<endl;
    28     for (theIterator=theMap.begin();theIterator!=theMap.end();++theIterator){
    29         cout<<(*theIterator).first;
    30         cout<<","<<(*theIterator).second<<" ";
    31     }
    32     cout<<endl;
    33 
    34     //测试map容器key的惟一性
    35     theMap.insert(INT2STRING::value_type(0,"Zero"));
    36     theMap.insert(INT2STRING::value_type(1,"One"));
    37     theMap.insert(INT2STRING::value_type(2,"Two"));
    38     theMap.insert(INT2STRING::value_type(3,"Three"));
    39     theMap.insert(INT2STRING::value_type(4,"Four"));
    40     theMap.insert(INT2STRING::value_type(5,"Five"));
    41     theMap.insert(INT2STRING::value_type(6,"Six"));
    42     theMap.insert(INT2STRING::value_type(7,"Seven"));
    43     theMap.insert(INT2STRING::value_type(8,"Eight"));
    44     theMap.insert(INT2STRING::value_type(9,"Nine"));
    45     //下列语句将不能插入到map容器中
    46     theMap.insert(INT2STRING::value_type(5,"AAA"));
    47 
    48     //显示map容器的所有对象
    49     cout<<"theMap.begin()--theMap.end():"<<endl;
    50     for (theIterator=theMap.begin();theIterator!=theMap.end();++theIterator){
    51         cout<<(*theIterator).first;
    52         cout<<","<<(*theIterator).second<<" ";
    53     }
    54     cout<<endl;
    55 
    56     //按键给定的区间显示序列中的元素
    57     cout<<"[theMap.lower_bound(3),theMap.upper_bound(8)] :"<<endl;
    58     for (it=theMap.lower_bound(3);it!=theMap.upper_bound(8);it++) {
    59         cout<<(*it).first;
    60         cout<<","<<(*it).second<<" ";
    61     }
    62     cout<<endl;
    63 
    64     //显示theMap的状态信息
    65     cout<<"theMap.size():"<<theMap.size()<<endl;
    66     cout<<"theMap.max_size():"<<theMap.max_size()<<endl;
    67     cout<<"theMap.count(15):"<<theMap.count(15)<<endl;
    68 
    69     // 从键盘上输入数字,显示对应的字符串
    70     string theString = "";
    71     int index;
    72     for( ; ; )
    73     {
    74         cout << "Enter "q" to quit, or enter a Number: ";
    75         cin >> theString;
    76         if(theString == "q")
    77             break;
    78 
    79         for(index = 0; index < theString.length(); index++){
    80             theIterator = theMap.find(theString[index] - '0');
    81             if(theIterator != theMap.end() ) 
    82                 cout << (*theIterator).second << " ";
    83             else    
    84                 cout << "[err] ";
    85         }
    86         cout << endl;
    87     }
    88     return 0;
    89 }
  • 相关阅读:
    c函数文件读写
    ubuntu server telnet 服务(转)
    如何使用MFC和类型库创建自动化项目
    认识配置设置文件(INI与XML)
    fopen时w与wb的区别
    VM连接 的三种方式
    UBUNTU 配置WEB服务器,PHP,MYSQL,PHPADMIN,APARCHE .
    VC++多线程编程
    ubuntu server 安装
    c++ static 关键字
  • 原文地址:https://www.cnblogs.com/borter/p/9417959.html
Copyright © 2011-2022 走看看