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

std::max segfault - C++

Восстановить пароль Регистрация
 
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
09.05.2013, 02:46     std::max segfault #1
Программа пытается найти максимально больше слово в векторе. Не пойму в чём дело:
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 <iostream>
#include <string>
#include <sstream>
#include <vector>
#include <iterator>
#include <algorithm>
 
bool cmp(std::vector<std::string>::iterator first, std::vector<std::string>::iterator second)
{
    return first->size() > second->size();
}
 
typedef std::istream_iterator<std::string> ii;
 
int main()
{
    std::string line;
 
    std::getline(std::cin, line);
 
    std::stringstream str(line);
    std::vector<std::string> v((ii(str)), ii());
    std::vector<std::string>::iterator max_word = std::max(v.begin(), v.end(), cmp);
    std::cout << *max_word << std::endl;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6897 / 5137 / 252
Регистрация: 10.12.2010
Сообщений: 22,579
Записей в блоге: 17
09.05.2013, 03:08     std::max segfault #2
std::max_element<>()
( http://www.cplusplus.com/reference/a...m/max_element/ )

std::max<>() это не алгоритм
( http://www.cplusplus.com/reference/a...hm/max/?kw=max)
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
09.05.2013, 03:21  [ТС]     std::max segfault #3
Цитата Сообщение от Avazart Посмотреть сообщение
std::max<>() это не алгоритм
Спасибо за ссылку. Но что же тогда это по вашему?
Avazart
 Аватар для Avazart
6897 / 5137 / 252
Регистрация: 10.12.2010
Сообщений: 22,579
Записей в блоге: 17
09.05.2013, 03:22     std::max segfault #4
Шаблон для нахождение большего из двух объектов...
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
09.05.2013, 10:20  [ТС]     std::max segfault #5
Avazart, мда, нельзя засиживаться сильно много за компьютером... что-то я вообще тупанул жёстко, спасибо.
Yandex
Объявления
09.05.2013, 10:20     std::max segfault
Ответ Создать тему
Опции темы

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