Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Шаблоны, STL 
:(
    Опции темы
MadDog__
Дата 11.8.2012, 01:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 2.10.2007

Репутация: нет
Всего: нет



Добрый вечер!

с шаблонами работал в скользь поэтому вопрос?

каким воспользваться стандартным ассоциативным шаблоном из STL что бы по ключу я мог сохранять и востанавливать 2 значения и более(ключ int, значение1 int, значение2 int) если можно приведите пример обьявления такого контейнира.

и еще можно будет такой контейнер поместить в <vector>  зарание благодарен откликнувшимся)))
PM MAIL   Вверх
baldina
Дата 11.8.2012, 01:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 32
Всего: 101



Код

struct foo {
  int bar1, bar2;
  foo (int a, int b) : bar1(a), bar2(b){}
};

typedef std::map<int,foo> FooMap;
typedef std::vector<FooMap> FooMapVector;

int main () {
  FooMapVector vec;
  for (int i=0; i < 10; ++i) {
    FooMap map;
    for (int j=0; j < 10; ++j) {
       map[j] = foo(i,j);
    }
    vec.push_back (map);
  }
}

PM MAIL   Вверх
MadDog__
  Дата 11.8.2012, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 2.10.2007

Репутация: нет
Всего: нет



Благодарю)))  smile 
PM MAIL   Вверх
disputant
Дата 12.8.2012, 13:38 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 210
Регистрация: 28.11.2011

Репутация: нет
Всего: 3



Если не строго два - то 
map<key, vector<value> >
и, соответственно,
vector<map<key, vector<value> > >
?

PM MAIL   Вверх
Peter
Дата 16.8.2012, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 771
Регистрация: 28.7.2003
Где: Ставрополь

Репутация: -1
Всего: 1



Вместо введения структуры foo можно использовать стандартный std::pair<int, int>.


--------------------
всё, что делаете, делайте от души, как для Господа (Послание апостола Павла колоссянам, 3:23).
PM MAIL WWW   Вверх
borisbn
Дата 16.8.2012, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(Peter @  16.8.2012,  12:24 Найти цитируемый пост)
Вместо введения структуры foo можно использовать стандартный std::pair<int, int>.

а вытаскивание из такого мапа выглядело бы так
Код
std::map< int, std::pair< int, int > >::const_iterator found = m.find( 10 );
int x = found->second.first; // очень красиво... и главное - "понятно"
  smile 

а если завтра потребуется 3 параметра ?

Цитата(disputant @  12.8.2012,  13:38 Найти цитируемый пост)
map<key, vector<value> >

а если этим третьим параметром будет std::string ?



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0680 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.