Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Rolion
14 / 14 / 3
Регистрация: 04.01.2011
Сообщений: 195
#1

Вектор и пара - C++

23.04.2012, 09:51. Просмотров 303. Ответов 3
Метки нет (Все метки)

Всем привет! В этом куске кода явно есть ошибка (он не компилируется), но я так и не смог её найти:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
vector<char> d[2000];
vector<pair<char [10],int> > sw [2000];
int s,t,n,m,t1,t2,u [2000];
char t3[10];
 
int main()
{
    scanf("%d %d",&n,&m);
    for (int i=0;i<n;++i) 
    {
        scanf("%d %d ",&t1,&t2);
        gets(t3);
        sw[t1].push_back(make_pair(t3,t2));  //ошибка
    }
................
В помеченной строчке вылезает "instantiated from here". Как это можно исправить и что это вообще такое?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2012, 09:51     Вектор и пара
Посмотрите здесь:

c++ пара задачек C++
C++ пара точек
C++ Пара вопросов по С++
C++ Структура-пара
Структура-пара C++
Не работает пара функций C++
C++ Структура - пара
контейнер -вектор вложеный в вектор C++
C++ Пара чисел.
C++ Структура-пара
C++ Пара вопросов по C++ 11
C++ Структура-пара

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
23.04.2012, 10:06     Вектор и пара #2
оно там и не компилируется, вы пытаетесь приравнять массив массиву, почему бы не воспользоваться string? у вас же там считывание строки идет, либо указатель на char*, но придется выделять память и в конце освобождать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <vector>
#include <iostream>
 
using namespace std;
 
vector<char> d[2000];
vector<pair<char *,int> > sw [2000];
int s,t,n,m,t1,t2,u [2000];
char t3[10];
 
int main()
{
    cin >> n >> m;
    for (int i=0;i<n;++i) 
    {
        cin >> t1 >> t2;
        cin.getline(t3, 9);
        pair <char*, int> n;
        n.first = new char[10];
        strcpy(n.first, t3);
        sw[t1].push_back(n);  
    }
// Тут надо освободить память при помощи delete;
    return 0;
}
Rolion
14 / 14 / 3
Регистрация: 04.01.2011
Сообщений: 195
23.04.2012, 10:23  [ТС]     Вектор и пара #3
А нельзя ли поподробнее -- как воспользоваться string'ом?
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
23.04.2012, 10:26     Вектор и пара #4
C++
1
pair<string, int>
Yandex
Объявления
23.04.2012, 10:26     Вектор и пара
Ответ Создать тему
Опции темы

Текущее время: 07:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru