在c++中如何从另一个完整映射中插入键和值到空映射

In c++ how to insert key and value in empty map from another full map

本文关键字:映射 插入 插入键 键和值 c++ 另一个      更新时间:2023-10-16

我是c++新手。

我正在使用map <int, int>制作纸牌游戏,我有idvalue的纸牌,以及一张空的纸牌地图。我需要将值和键从一个映射转移到另一个映射。Used cards用于检查map spil中不重复的卡。

struct cards { 
    map<int, int> used_cards;
    map<int, int> card_spil = {{1, 11},{2, 2},{3,3},{4,4},{5,5}...}
}
// random number for dealing
a=random(); 
// see if that card is already in use
auto search = cards1.used_cards.find(a);
// if not put her id and value in used_cards map
if (search == cards1.used_cards.end()){ 
    // put id and values from card_spil to used_cards
}

问题:

如何实现if语句的块?

要从card_spil插入一个元素到used_cards,您可以使用:

used_cards.insert({a, card_spil.at(a)});

然后从card_spil中删除key->值:

card_spil.erase (a);