• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

异度空间

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

CMap的一个使用例子

#include "stdafx.h"
#include "test.h"
#include <afxtempl.h>
#include <iostream>
using namespace std;

class Point
{
public:
    Point()  
    {  
        m_x = 0;  
        m_y = 0;  
    }

    Point(int x, int y)  
    {  
        m_x = x;  
        m_y = y;  
    }

public:

    int m_x;
    int m_y;

};

typedef CMap<const char*, const char*, Point, Point&>     CMapPnt; //请在使用之前定义

int main()
{

    Point elem1(1, 100), elem2(2, 200), elem3(3, 300), point;

    CMapPnt mp;

    // insert 3 elements into map,          #1

    mp.SetAt("1st", elem1);

    mp.SetAt("2nd", elem2);

    mp.SetAt("3th", elem3);
  

    // search a point named "2nd" from map                  #2

    mp.Lookup("2nd", point);

    printf("2nd: m_x: %d, m_y: %d"n", point.m_x, point.m_y);

// insert a new pair into map      #3

Point elem4(4, 400);

mp["4th"] = elem4;

cout<<"count: "<<mp.GetCount()<<endl;

// traverse the entire map                    #4

size_t index = 0;

const char* pszKey;

POSITION ps = mp.GetStartPosition();

while( ps )  
{
  
   mp.GetNextAssoc(ps, pszKey, point);
  
   printf("index: %d, m_x: %d, m_y: %d"n", ++index, point.m_x, point.m_y);  
}

return 0;

}

posted on 2008-12-29 14:35  madlas  阅读(415)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3