zoukankan      html  css  js  c++  java
  • STL

    把Map用作关联式数组

    MapAdvanceTest.cpp

    #include <map>
    #include <string>
    #include <iostream>
    #include <iomanip>
    #include "MapAdvanceTest.h"
    #include "../../Core/ContainerUtil.h"
    
    using namespace std;
    
    void MapAdvanceTest::useAsAssociativeArray()
    {
        // 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
        ContainerUtil<StringFloatMap>::printMapInDiv(stocks, "Stock", "Price", 15);
    
        // boom (all prices doubled)
        StringFloatMap::iterator pos;
        for (pos = stocks.begin(); pos != stocks.end(); ++pos) {
            pos->second *= 2;
        }
    
        // print all elements
        ContainerUtil<StringFloatMap>::printMapInDiv(stocks, "Stock", "Price", 15);
    
        // rename key from "VW" to "Volkswagen"
        // - provided only by exchanging element
        stocks["Volkswagen"] = stocks["VW"];
        stocks.erase("VW");
    
        // print all elements
        ContainerUtil<StringFloatMap>::printMapInDiv(stocks, "Stock", "Price", 15);
    }
    
    void MapAdvanceTest::run()
    {
        printStart("useAsAssociativeArray()");
        useAsAssociativeArray();
        printEnd("useAsAssociativeArray()");
    }

    运行结果:

    ---------------- useAsAssociativeArray(): Run Start ----------------
    Stock: BASF Price: 369.5
    Stock: BMW Price: 834
    Stock: Daimler Price: 819
    Stock: Siemens Price: 842.2
    Stock: VW Price: 413.5

    Stock: BASF Price: 739
    Stock: BMW Price: 1668
    Stock: Daimler Price: 1638
    Stock: Siemens Price: 1684.4
    Stock: VW Price: 827

    Stock: BASF Price: 739
    Stock: BMW Price: 1668
    Stock: Daimler Price: 1638
    Stock: Siemens Price: 1684.4
    Stock: Volkswagen Price: 827

    ---------------- useAsAssociativeArray(): Run End ----------------

  • 相关阅读:
    [转]maven插件的开发
    开发建议
    [转]利用maven的surefire插件实现单元测试与集成测试
    sonar-maven-plugin错误2
    20145218张晓涵_网络欺诈技术防范
    20145218张晓涵_信息搜集与漏洞扫描
    20145218张晓涵_Exp5 MSF基础应用
    20145218张晓涵 PC平台逆向破解_advanced
    20145218张晓涵 恶意代码分析
    20145218 免杀原理与实践
  • 原文地址:https://www.cnblogs.com/davidgu/p/4936256.html
Copyright © 2011-2022 走看看