map1.cpp

来自「stl自带源码」· C++ 代码 · 共 65 行

CPP
65
字号
/* The following code example is taken from the book * "The C++ Standard Library - A Tutorial and Reference" * by Nicolai M. Josuttis, Addison-Wesley, 1999 * * (C) Copyright Nicolai M. Josuttis 1999. * Permission to copy, use, modify, sell and distribute this software * is granted provided this copyright notice appears in all copies. * This software is provided "as is" without express or implied * warranty, and with no claim as to its suitability for any purpose. */#include <iostream>#include <map>#include <string>using namespace std;int main(){    /* create map / associative array     * - keys are strings     * - values are floats     */    typedef map<string,float> StringFloatMap;    StringFloatMap stocks;      // create empty container    // insert some elements    stocks["BASF"] = 369.50;    stocks["VW"] = 413.50;    stocks["Daimler"] = 819.00;    stocks["BMW"] = 834.00;    stocks["Siemens"] = 842.20;    // print all elements    StringFloatMap::iterator pos;    for (pos = stocks.begin(); pos != stocks.end(); ++pos) {        cout << "stock: " << pos->first << "\t"             << "price: " << pos->second << endl;    }    cout << endl;    // boom (all prices doubled)    for (pos = stocks.begin(); pos != stocks.end(); ++pos) {        pos->second *= 2;    }    // print all elements    for (pos = stocks.begin(); pos != stocks.end(); ++pos) {        cout << "stock: " << pos->first << "\t"             << "price: " << pos->second << endl;    }    cout << endl;    /* rename key from "VW" to "Volkswagen"     * - only provided by exchanging element     */    stocks["Volkswagen"] = stocks["VW"];    stocks.erase("VW");    // print all elements    for (pos = stocks.begin(); pos != stocks.end(); ++pos) {        cout << "stock: " << pos->first << "\t"             << "price: " << pos->second << endl;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?