【Pia开发日记】cocos2d-x CCDictionary allKeys用法

原创 2013年11月27日 16:46:40

CCArray* CCDictionary::allKeys()
{
    //取得词汇的数量
    int iKeyCount = this->count();
    if (iKeyCount <= 0) return NULL;
    //创建一个iKeyCount大小的CCArray
    CCArray* pArray = CCArray::createWithCapacity(iKeyCount);
    //定义临时词汇指针变量。
    CCDictElement *pElement, *tmp;
    if (m_eDictType == kCCDictStr)
    {    //如果当前词典查询类型是通过名称字符串。
        //遍历所有词汇。
        HASH_ITER(hh, m_pElements, pElement, tmp) 
        {
            //取得每一个词汇的名称字符串放入CCArray中。
            CCString* pOneKey = new CCString(pElement->m_szKey);
            pOneKey->autorelease();
            pArray->addObject(pOneKey);
        }
    }
    else if (m_eDictType == kCCDictInt)
    {    //如果当前词典查询类型是通过索引。
        //遍历所有词汇。

        HASH_ITER(hh, m_pElements, pElement, tmp) 
        {
            //取得每一个词汇的名称字符串放入CCArray中。
            CCInteger* pOneKey = new CCInteger(pElement->m_iKey);
            pOneKey->autorelease();
            pArray->addObject(pOneKey);
        }
    }
    
    return pArray;
}
以上为CCDictionary::allKeys(源码),由

            CCString* pOneKey = new CCString(pElement->m_szKey);
            pOneKey->autorelease();
            pArray->addObject(pOneKey);
            CCInteger* pOneKey = new CCInteger(pElement->m_iKey);
            pOneKey->autorelease();
            pArray->addObject(pOneKey);

可知,可以将键值强制类型转换成CCString 或者CCInteger

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

CCDictionary

简介 CCDirtionary使用UTHash实现的。老版本的CCMutableDictionary使用STL实现,但是已经被移除了。而且CCDictionary也是最近才被添加进来的。由于CC...
  • IT_DS
  • IT_DS
  • 2015-02-09 18:22
  • 686

【玩转cocos2d-x之二十六】数据结构CCDictionary

CCDictionary在cocos2d-x中被大量的应用,比如CCTexureCache,CCSpriteFramCache等等。 1.实现原理 1.1.uthash CCDiction...

Cocos2d-x中的词典类CCDictionary深入分析

[Cocos2d-x相关教程来源于红孩儿的游戏编程之路 CSDN博客地址:http://blog.csdn.net/honghaier]   红孩儿Cocos2d-X学习园地QQ群:249941...

cocos2d-X 节点(CCDictionary)API

本文来自http://blog.csdn.net/runaying ,引用必须注明出处! cocos2d-X 节点(CCDictionary)API ///\cocos2d-x-3.0alph...

cocos2d-x android移植日记

使用cocos2d-x引擎已经有一段时间了,该引擎可以支持许多平台,我研了一款游戏产品。最开始的时候是在win7下使用Visual studio 2010进行开发,测试,进行到一个阶段之后,把它移植到...
  • xu_cq
  • xu_cq
  • 2013-04-29 07:33
  • 1721

cocos2d-x学习日记之网络通信篇—HttpClient

Title:使用HttpClient实现一个与服务器的简单的交互 通过输入账号和密码点击登录 显示登录情况 服务器地址:这里使用的是公司的服务器地址 "http://42.96.151.161:83...

cocos2d-x学习日记 - 1. 基础概念 - 导演, 场景, 层, 精灵

1. 基础概念 - 导演, 场景, 层, 精灵1. 导演(Director): a. Cocos2d-x核心, 用 getInstence() 获得 Director 实例. 2. 场景(Sc...

cocos2d-x getVisibleSize , getVisibleOrigin 和坐标位置日记

getWinSize : 获取设备屏幕大小. getVisibleSize:获得视口(可视区域)的大小,若是DesignResolutionSize跟屏幕尺寸一样大,则getVisibleSize便...

cocos2d-x学习日记 - 2. 调度器

2. 调度器1. 默认调度器: schedulerUpdate() a. 每一帧都会被调用, 需要重载 update 方法来执行自己的逻辑代码 b. 通过执行 schedulerUpd...

cocos2d-x CCArray用法 遍历和删除元素

本文为 justbilt 原创,转载请标明原作者及原文出处,以示尊重! 作者:justbilt 原文:http://blog.justbilt.com/25/   一.基本用法 1.声明...
  • kenkao
  • kenkao
  • 2013-08-27 09:56
  • 11968
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)