![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| DjoNIK |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: 4 Всего: 5 |
При 2-ом add-e в дебагере MS VC++(2005) в list.cpp в строчке 27 curr == 0x00355d30 и end == 0x00355d30, и цикл работает так, как я и ожидал.
При 3-ем же add-e на втором шаге цикла в строчке 27 curr == 0x00355d30 и end == 0x00355d30, НО(!) цикл работает уже не так, как я ожидал. Что-то мне не верится что у меня глючная студия Гуру(и пока ещё не очень), помогите новичку! list.h:
list.cpp:
main.cpp:
Это сообщение отредактировал(а) DjoNIK - 19.8.2007, 18:56 -------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
||||||
|
|||||||
| Fin |
|
||||||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 3 Всего: 10 |
раскажи мне пожайлуста смысл тройного дублирования кода? Ведь curr, start и end у тебя ссылки на один и тот же участок памяти, следовательно при изменении значений в curr->d, автоматически будут изменены значения также и в start->d и end->d. Сделай так
Тогда твой код можно сократить до
-------------------- Пролетал мимо. |
||||||
|
|||||||
| DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: 4 Всего: 5 |
Уместное замечание, но к сожалению корень проблемы не решает :(
Это сообщение отредактировал(а) DjoNIK - 19.8.2007, 21:16 -------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
| Fin |
|
|||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 3 Всего: 10 |
Судя по твоей логике, curr не нужен в мемберах класса. Твой код можно переписать так
-------------------- Пролетал мимо. |
|||
|
||||
| DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: 4 Всего: 5 |
Да, это тоже верно с точки зрения правильного стиля и эффективности(просто код переделывался из обычного односвязного списка без приоритетности). Но опять же программа не хочет работать.
-------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
| Fazil6 |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
Это сообщение отредактировал(а) Fazil6 - 20.8.2007, 00:27 |
||||
|
|||||
| Fin |
|
||||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 3 Всего: 10 |
Вот я прогнал твой код у себя на компе
list.h
list.cpp
Чуть чуть подкорректировал другие функции. Изменил имя структуры с link на linkstr. У меня слово link компилятор посчитал зарезервированным словом. -------------------- Пролетал мимо. |
||||
|
|||||
| DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: 4 Всего: 5 |
Ужас, из-за чего весь сыр-бор завел - в цикле надо было поставить логическое И, чтобы при не выполнении какого-либо условия он завершался. А я по запарке подумал, что раз надо выходить по одному из условий, то мне нужно логическое ИЛИ.
Вот .... Fin спасибо Это сообщение отредактировал(а) DjoNIK - 20.8.2007, 08:46 -------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |