|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.01.2012, 09:17 | #1 |
Форумчанин
Регистрация: 25.11.2010
Сообщений: 164
|
Разделение данных
Написал функцию для парсинга Index'го элемента из строки с разделителем, но ф-я работает только первый раз. Я подозреваю, то что ф-я strtok как-то не так всё это делает.
Код:
Код:
Возможно Я Быдлокодер ©.
|
15.01.2012, 09:33 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
скорее вы не умеете применять strtok.
http://cplusplus.com/reference/clibrary/cstring/strtok/ Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
15.01.2012, 22:12 | #3 |
Форумчанин
Регистрация: 25.11.2010
Сообщений: 164
|
Код:
Возможно Я Быдлокодер ©.
|
16.01.2012, 08:41 | #4 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
2. Не_рациональное падение производительности. Функция возвращает значение тяжелого объекта, что приведёт к запуску копирующего конструктора. 3. Не_рациональное падение производительности. Условие внутри цикла: Код:
Зачем 100500 раз запускать условие, которое гарантированно в холостую будет кушать процессорное время? Итого: можно оптимизировать. Последний раз редактировалось _Bers; 16.01.2012 в 17:02. |
|
16.01.2012, 17:00 | #5 |
Пользователь
Регистрация: 28.12.2011
Сообщений: 27
|
Кстати, оптимизацию надо проводить вроде такой:
( пример из жизни, комментарии ассоциативные ) Код:
|
16.01.2012, 17:08 | #6 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
Замена хорошо читаемого имени переменной на плохо читаемое никакого отношения к "оптимизации" не имеет. 2. Запись вида: Код:
А значит, проверка: Код:
Следовательно, в макрос нужно обернуть весь блок условия, а не "последствия его истинности". Проверка не должна войти в релиз. Любые грубые программные ошибки должны быть выловлены на этапе дебаг-версии. Последний раз редактировалось _Bers; 16.01.2012 в 17:11. |
|
16.01.2012, 18:29 | #7 | ||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Код:
прикол в том что программа если дойдет до проверки то у нас гарантировано есть объект, иначе вывалиться ранее. а вообще указатель никогда не будет null. так как если m_ComboTypeTask это объект, то он ясное дело имеет адрес всегда. а если ссылка то они не бывают null. Цитата:
и так же зависит от того что мы имеем, если у нас есть прямой доступ к объекту(или через ссылку) этому в функции, то нет смысла брать от него указатель. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
||
18.01.2012, 00:21 | #8 | |
Форумчанин
Регистрация: 25.11.2010
Сообщений: 164
|
Цитата:
Код:
Возможно Я Быдлокодер ©.
|
|
18.01.2012, 20:20 | #9 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
не все оптимизировали, принимайте ссылку на std::string.
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
18.01.2012, 21:37 | #10 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
То есть, вместо того, что бы простым и тривиальным способом избежать ненужного копирующего конструктора, вы предлагаете передавать данные по значению, и тратить время на копирующий конструктор?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разделение данных одной ячейки | jestya | Microsoft Office Excel | 4 | 29.09.2010 14:54 |
разделение данных в ячейках | Viper_FMX | Microsoft Office Excel | 2 | 27.09.2010 02:43 |
Разделение данных на несколько ячеек | d_adilet | Microsoft Office Access | 6 | 29.06.2010 09:28 |
Разделение массива данных на части | Евгений К. | Microsoft Office Excel | 2 | 03.06.2010 13:41 |
Разделение. | Maksim_27_10 | Общие вопросы C/C++ | 8 | 21.04.2010 20:40 |