![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| in550 |
|
|||
|
Новичок Профиль Группа: Awaiting Authorisation Сообщений: 11 Регистрация: 16.1.2007 Репутация: нет Всего: нет |
У меня есть список. Мне необходимо создать папку с именем одного из элементов, который будет найден. Если элемент не найден, то папка не создается.
|
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
Не просёк чего-то. = сижу в недоумках (недоумении). При данном условии "b" как раз и не найдено (==primer.end()). по второй части тоже недопонимание. предположим, что условие поправишь. но тогда ты явно знаешь, какой элемент там будет (который будет равен "b"). В чем проблема-то? Хочешь намотать проверку на значение элемента, чтобы в нем были только символы, разрешенные файлсистемой? -------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
| korbian |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 336 Регистрация: 20.2.2007 Где: Penza Репутация: 2 Всего: 14 |
in550, тебе нужен функтор
примерно такой
PS: не компилировал Это сообщение отредактировал(а) korbian - 9.8.2007, 13:55 -------------------- korbian © |
|||
|
||||
| Любитель |
|
|||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 24 Всего: 92 |
korbian, во-первых с функторами юзается find_if, а во вторых обычный финд как раз оператором = и сравнивает. Вообще не понял вопроса изначального, если честно
|
|||
|
||||
| korbian |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 336 Регистрация: 20.2.2007 Где: Penza Репутация: 2 Всего: 14 |
Любитель, прям в точку.
я find_if и подразумевал, но опечатался (жаркая пора, сдачи). -------------------- korbian © |
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
А так не прокатит?
void myFunc(std::string& sf ) { std::list<std::string> someList; // инициализация списка. Здесь будет город заложён. std::list<std::string>::const_iterator it = std::find(someList.begin(), someList.end(), sf); if(it == someList.end()) { // Дома нету никого! Заходите в понедельник. } else { // нашлась крокозябра! Тут мы её и... } } Наскока знаю, функторы или предикаты неплоха зажигают, когда условие сравнения достаточно нестандартное. А тут все просто. И если вопрос только в этом, то лучше автору порекомендовать ссылку на учебник. Угу? Это сообщение отредактировал(а) akizelokro - 9.8.2007, 14:17 -------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
| korbian |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 336 Регистрация: 20.2.2007 Где: Penza Репутация: 2 Всего: 14 |
ИМХО, функторы универсальней.
-------------------- korbian © |
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
Кстати, мона пофилосовствовать на тему, что извратно понимаемая "универсальность" и обьектно-ориентированная парадигма приводят к распуханию кода и тык дыкс по списку. Искренне ваш вобло и зебро, -------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
| korbian |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 336 Регистрация: 20.2.2007 Где: Penza Репутация: 2 Всего: 14 |
akizelokro, возможно вы правы.
-------------------- korbian © |
|||
|
||||
| gif0 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 6.11.2009 Репутация: нет Всего: нет |
in550, find вернет итератор на найденные элемент. Т.к. итератор - это указатель, то можно получить доступ к элементу, на который указывает этот итератор использую оператор "*":
Протестить это дело не было времени, но все должно быть более-менее компилирующееся. Это сообщение отредактировал(а) gif0 - 20.12.2009, 23:08 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |