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

Слишком медленное чтение wstring из файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обменять элементы двух массивов местами http://www.cyberforum.ru/cpp-beginners/thread1166431.html
Товарищи здравствуйте, помогите с задачей на STL Контейнер Vector. 1. Создать массив из пяти целых чисел. Инициализировать все его элементы случайным числом. Цикл не использовать. 2. Создать второй массив такого же размера. Ввести его элементы с клавиатуры. 3. Обменять элементы двух массивов местами. Цикл не использовать.
C++ Задача на множественное наследование: “Компьютер”, “Сервер”, "ПК", Товарищи, помогите Реализовать следующую систему классов: Класс “Компьютер”. Поля: название, объем оперативной памяти, название видеокарты. Класс “Сервер”. Поля: количество ядер в процессоре, количество каналов связи с интернет, особенности (строка). Класс “Персональный компьютер” – наследуется от класса «Компьютер». Поля: наличие звука, название звуковой карты. Тип мыши (мышь/трекбол).... http://www.cyberforum.ru/cpp-beginners/thread1166428.html
Реализовать класс MyQueue, позволяющий хранить данные любого типа в виде очереди C++
Здравствуйте уважаемые форумчане, помогите с задачей на шаблоны 1. Реализовать класс MyQueue, позволяющий хранить данные любого типа в виде очереди. Реализовать функции: добавления элемента в стек, удаления из стека, проверки состояния очереди (пуста/полна). Переопределить оператор вывода на экран. 2.Найти, в чем отличие class от typename в объявлении шаблона Добавлено через 9 часов 3...
Создать классы исключения, наследуемые от класса std::exception C++
1. Создать класс, описывающий треугольник, как массив из трех точек. Функции: Установка значения точек и вычисление периметра. 2. Создать классы исключения, отнаследованные от класса std::exception. Генерировать исключения в следующих случаях: – Если не выполняется неравенство треугольника – Если три точки лежат на одной прямой.
C++ Классы «Точка» и «Многоугольник»: полиморфизм и перегрузка операторов http://www.cyberforum.ru/cpp-beginners/thread1166404.html
Реализовать класс «Точка» и «Многоугольник». В классе «Точка» присутствуют: 1. два целых числа (X и Y) 2. параметризованный конструктор, деструктор 3. операторы ввода и вывода В классе «Многоугольник» присутствуют: 1. массив точек (10 штук) 2. конструктор (создает массив из трех точек), деструктор 3. операторы ввода и вывода оператор добавления точки к многоугольнику
C++ Арифметическое выражение в виде ПОЛИЗ Дана строка, содержащая запись арифметического выражения в виде ПОЛИЗ. Примем за условие задачи, что: 1. Имя переменной в арифметическом выражении начинается с буквы или знака _; 2. В выражении могут выполняться только операции: +, -, /, * 3. В арифметическом выражении нет вызовов функций; Создайте проект, который вычисляет полученный ПОЛИЗ, используя стек. На экран должно выводиться... подробнее

Показать сообщение отдельно
CAXOPOK
1 / 1 / 0
Регистрация: 29.03.2013
Сообщений: 59
05.05.2014, 17:27  [ТС]     Слишком медленное чтение wstring из файла
Учту все ваши замечания.
А ошибка моя заключалась в том, что я постоянно запускал отладчик, и это ужасно замедляло работу.
А вот и код - срабатывает за ~6 секунд на 17000000 строк.
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
#include<string>
#include<fstream>
#include<vector>
#include<iostream>
#include<ctime>
using namespace std;
char nameoffile[] = "G:/all_tweets.txt";
 
struct twit
{
    double x;
    double y;
    int year;
    int month;
    int day;
    int hour;
    int minuts;
    int secodns;
    string sender;
    string i;
};
 
 
void readAll(vector<string>& twits)
{
    fstream input;
    input.open(nameoffile);
 
    string line;
    int i;
    while(getline(input, line))
    {
       twits.push_back(line);
    }
    cout<<twits.size();
}
 
int main()
{
    time_t t = time(NULL);
    vector<string> alltwits;
    readAll(alltwits);
    cout << endl << "end" << ' '<< time(NULL) - t;
    system("pause");
    return 0;
}
P.S. Спасибо за советы и извините на мою неграмотность.
P.P.S. Проблема снята.
 
Текущее время: 12:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru