URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 3988
[ Назад ]

Исходное сообщение
"А как можно инициализировать map"

Отправлено Lamr , 21-Фев-05 19:42 
при описании? Типа map<int,int> = { 1,2,3,4 }; Что-то не найду самплов. Вообще-то конструктор у него только void, это приговор?

Содержание

Сообщения в этом обсуждении
"А как можно инициализировать map"
Отправлено DeadMustdie , 21-Фев-05 22:07 
>при описании? Типа map<int,int> = { 1,2,3,4 }; Что-то не найду
>самплов. Вообще-то конструктор у него только void, это приговор?

В C++ приговоры вообще редкость. Можно нечто a la:

tamplate<typename K, typename V>
MySuperMap : public std::map<K, V>
{
public:
  struct Pair {
    K k;
    V v;
  };
  MySuperMap(Pair *p=NULL, unsigned int count=0)
  {
     // инициализация карты
  }
};

static const Pair pairs[3] = { {1,2}, {3,4}, {5,6} };
MySuperMap<int, int> msm(pairs, sizeof(pairs)/sizeof(Pair));