我目前正在用c ++制作自己的体素引擎,但我似乎遇到了一个问题。
我使用基于块的系统并将其存储在三维地图中,变量定义如下所示:
map<uint64_t,map<uint64_t,map<uint64_t,Chunk*>>> Chunks;
但是,我无法找到从地图中删除任何值的正确方法,我尝试使用map::erase
函数但没有成功,有没有什么好方法可以做到这一点我我不知道?
点:S
这是我正在尝试的map::erase
函数:
Chunks[x][y].erase(z);
提前致谢!
答案 0 :(得分:0)
地图是键值类型,因此您无法尝试以数组形式进行访问:
尝试通过示例删除第一个元素:
Chunks.erase(KeyOfFirstElement);