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

Заполнить контейнер map и vector данными из файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ из 16 в 10 (системы счисления) http://www.cyberforum.ru/cpp-beginners/thread721525.html
Как на C++ перевести шестнадцетиричное число в десятичное?? Обе переменные int типа!!!!
C++ редагование файла В тхт файле есть данные по студентах: ФИО, телефон, возвраст. Каждая строка новый студент. Нужно спросить у пользователя какую строчку нужно отредактировать - вывести ее на экран - отредактировать и переписать файл с новым значением определенной строки. Как такое реализовать?) http://www.cyberforum.ru/cpp-beginners/thread721521.html
C++ обратная польская запись
Требуется написать программу получения из обычной записи обратную польскую запись. Например: входные данные: 12*(3+5) выход: 12 3 5 + * Добавлено через 59 секунд помогите пожалуйста
Сформировать произвольную матрицу C++
Здравствуйте ув. участники форума. Помогите пожалуйста. Даны натуральные числа n, M (n<M). Cформировать произвольную матрицу размерностью n*M. Найти наибольший и наименьший элемент заштрихованной области.
C++ Динамический трёхмерный массив (создать) http://www.cyberforum.ru/cpp-beginners/thread721507.html
Помогите создать трёхмерный динамический массив. int size=10; int ***Field; Field=new int**; for(int i=0;i<size;i++) Field=new int*; for(int i=0;i<3;i++) Field=new int; Ошибка: error C2440: =: невозможно преобразовать "int *" в "int **"
C++ Утечка памяти Либо я себе мозг запудрила, либо помогите мне :) есть у меня вектор vector<char*> names_variable; дополняю его таким образом char* s = new char; s = '\0'; // код ... names_variable.push_back(s); и при этом не удаляю указатель s .. ибо в векторе останется пусто подробнее

Показать сообщение отдельно
Beta
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 9
06.12.2012, 15:16     Заполнить контейнер map и vector данными из файла
Текстовый файл содержит в себе информацию о пяти лифтах в виде:
12 900 first
10 600 second
15 700 third
20 1000 fourth
16 800 fifth
первое число-максимальный этаж, второе - максимальный вес, а слово - это название лифта.
Нужно считать эти данные , пользуясь библиотекой <fstream>,в контейнеры map и vector. Контейнер vector должен быть внутри map, т.е. ключ это название лифта, а значение(максимальный этаж и вес) содержит в себе vector.
Затем все вывести на экран. Вот мои наработки:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream>
#include <fstream>
#include <string>
#include <map>
#include <vector>
#include <iterator>
using namespace std;
int main(int argc,char*argv[])
{
    if (argc!=2)
    {
        cout<<"wrong format"<<endl;
        return -2;
    }
    
    
    map <string,vector<pair<int,int>>> Lift;
    vector<pair<int,int>> Section; 
 
    string lift_name;
    int floor,weight;
    map <string,vector<pair<int,int>>>::iterator m;
    vector<pair<int,int>>::iterator v;
    ifstream stream(argv[1]);
    if (!stream)
    {
        cout<<"error open file"<<endl;
        return -1;
    }
 
    
    while(!stream.eof())
    {
        
 
 
        for(v=Section.begin(); v!=Section.end(); ++v)
        {
            stream>>floor>>weight>>lift_name;
            Section.push_back(pair <int,int> (floor,weight));
            cout<<v->first<<" "<<v->second<<endl;
            
        }
 
        
 
 
        }
    stream.close();
    
    
    
    return 0;
}
Код компилируется, ошибок никаких не вылетает, но при отладке вылетает пустое черное окно, не могу понять, в чем тут дело?..И еще не могу понять как записать в map считанное значение имени лифта и заполненный vector. строка
C++
1
Lift.insert(lift_name);
дает ошибку при отладке.
строка
C++
1
Lift.insert(lift_name,pair<int,int> (floor,weight));
так же дает ошибку
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru