2.5 map

#include<map>

key/value对

采用红黑树实现,键值不允许重复

用法与set类似


创建map:

map<string, float> m;
m["haha"] = 11.1;
m["hehe"] = 22.2;
for (map<string, float>::iterator it = m.begin(); it != m.end(); ++it)
    cout << (*it).first << " : " << (*it).second << endl;

删除元素:

删除某个迭代器位置上的元素、等于某个键值的元素、一个迭代器区间上的元素

m.erase("haha");

清空map

m.clear();


反向遍历:

for(map<string, float>::reverse_iterator rit = m.rbegin(); rit != m.rend(); ++rit)
    cout << (*rit).first << " : " << (*rit).second << endl;

元素的搜索:

map<string, float> = m.find("hehe"); //按关键字搜索,如果找到,返回迭代器位置;未找到,返回end()。


自定义比较函数与set自定义比较函数相同:

1、是结构体,重载"<";

2、不是结构体,构造一个结构体,重载"()",逻辑代码实现比较

struct desComp
{
    bool operator()(const string &s1, const string &s2)
    {
        if (a != b) return a > b;
        else return a > b;
    }
};

map<string, float, desComp> m;
m["haha"] = 11.1;
m["hehe"] = 22.2;
for (map<string, float, desComp>::it = m.begin(); it != m.end(); ++it)
    cout << (*it).first << " : " << (*it).second << endl;

用map实现数字分离(字符映射为数字)

map<char,int> m;
for (int i = 0; i < 10; ++i)
    m['0'+i]=i;
string s="123456";
int a = m[s[3]];//取出第三位上的数字

以上方法采用map<int, char>结构就可以将数字映射为字符


转载于:https://my.oschina.net/kuailechengxuyuan/blog/831365

### 回答1: Tilemap 2.5D是一种游戏制作工具,常用于制作2D游戏的地图设计。它结合了2D和3D的元素,具有更加丰富的游戏效果和场景表现能力。 Tilemap 2.5D采用了一种类似像素砖块的方式来创建游戏地图。这些砖块可以是不同的形状,大小和材质。游戏开发者可以通过将这些砖块粘贴到地图上来构建游戏场景。 与传统的2D游戏地图相比,Tilemap 2.5D可以让游戏地图具有立体感。通过使用半透明贴图和阴影效果,可以让游戏场景看起来更加真实。这种技术可以为玩家提供更加沉浸式的游戏体验。 Tilemap 2.5D的另一个重要特点是它可以为游戏设计师提供更多的自由度。设计师可以在地图上添加多个图层,每个图层可以有不同的高度和视角。这样一来,设计师可以更好地控制游戏场景的视觉效果,创造出更加绚丽多样的游戏世界。 总的来说,Tilemap 2.5D是一个非常有用的游戏制作工具,可以为游戏提供更加丰富的景观效果。它将2D和3D元素结合在一起,创造出更加真实和引人注目的游戏场景。无论是制作冒险、平台还是RPG游戏,Tilemap 2.5D都可以帮助开发者实现独特而精美的游戏地图设计。 ### 回答2: Tilemap 2.5D(2.5维瓦片地图)是一种在游戏设计中常用的技术,将传统的2D瓦片地图与少量的3D效果相结合。它的目的是在保留2D像素风格的同时,增加一些立体感和深度。 Tilemap 2.5D通过使用不同高度的瓦片,使得游戏场景看起来有了一些立体效果。这些不同高度的瓦片可以用来描绘建筑物、山脉、河流等立体物体。虽然这些物体仍然是以2D的形式存在,但是通过使用适当的投影和细节处理,它们会给玩家一种3D世界的错觉。 相比于完全的3D游戏,Tilemap 2.5D有一些显著的优势。首先,它通常比纯3D游戏更容易制作。使用2D的瓦片地图制作游戏场景要比使用复杂的3D模型和贴图来制作地形快速简单得多。其次,由于使用的是2D纹理和精灵,Tilemap 2.5D可以在更低性能的设备上流畅运行,并且节省内存和存储空间。 然而,Tilemap 2.5D也有一些限制。由于它仍然是在一个2D平面上模拟的3D环境,因此在一些细节上可能会有些不真实或受限。例如,无法实现真正的细腻的3D模型和光照效果。此外,由于使用了瓦片地图的限制,游戏场景可能会看起来有些重复和模式化。 总的来说,Tilemap 2.5D是一种在游戏设计中常用的技术,它能够创造出带有立体感和深度的2D游戏场景。它制作简单、性能消耗较低,适合一些对3D效果要求不高的游戏类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值