32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
|
1 | |
Посоветуйте новичку в С++31.07.2011, 17:04. Показов 10341. Ответов 126
Метки нет (Все метки)
Здравствуйте!
После школьной программы знаком с основами Паскаля, Делфи. Скоро поступлю в ВУЗ. Скорей всего буду изучать там С++. Решил немного подготовиться. Скачал книгу Либерти (21 день). Сейчас остановился на девятом дне. "Прошел" указатели и ссылки. Возникают большие трудности при использовании указателей и ссылок в классах. Утечки, нулевые объекты, мины замедленного действия, одним словом остались для меня непонятными. Во-первых мне интересно - я виноват? Или это тяжелые темы для всех? Сколько вы потратили дней, чтобы полностью разобраться в этих темах? Вся сложность в них в том, что надо понимать, как записывается информация, где хранится, когда будет запускаться конструктор, copy конструктор, деструктор. Как надо использовать функции чтобы не запускать copy конструктор. Во-вторых я хочу спросить, а надо ли мне новичку, знакомым с С++ 7 дней, разбираться в таких, как мне кажется профессиональных вещах? Может можноо обратиться к ним позже? Или дальше без этих тем не уедешь? Тоесть основной вопрос: если остались непонятки в этих темах, можно изучать дальше, а потом вернуться к ним? Или лучше сейчас все понять?
0
|
31.07.2011, 17:04 | |
Ответы с готовыми решениями:
126
посоветуйте новичку в С++ посоветуйте литературу, новичку Посоветуйте книгу/-и новичку Посоветуйте новичку порядок действий |
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 21:22 | 81 |
Это шутка ?
Добавлено через 5 минут Да и это просто пример, как выйти из глубоко вложеного цикла без булевых флагов, а именно средствами С++.
0
|
848 / 190 / 18
Регистрация: 01.08.2011
Сообщений: 505
|
|
05.08.2011, 21:25 | 82 |
Интересно, вот gore-lykovoe, открывший эту тему, читает все сообщения и о чем же он думает Какое впечатление о С++ будет
0
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
|
05.08.2011, 21:27 | 83 |
Вот с хабра крик души:
1
|
848 / 190 / 18
Регистрация: 01.08.2011
Сообщений: 505
|
|
05.08.2011, 21:44 | 85 |
Не моя это установка, я сама иногда указатели на функции использую (честно говоря), код получается интереснее, но вот так, что я могу сказать...
0
|
05.08.2011, 21:57 | 86 |
Я абсолютно серьезно. Исключения, как ни странно, предназначены для исключительных ситуаций. Выход из цикла ситуация вполне штатная. Ничего в этом катастрофического нет. А любой программист при виде брошенного исключения скорее всего подумает об ошибке.
а goto это тоже средства C++. Поддерживаю. Да и вообще многое, о чем написано в этой статье, мало относится к C++. Скорее к ООП в целом.
1
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 21:59 | 87 |
0
|
05.08.2011, 22:03 | 89 |
Сообщение было отмечено как решение
Решение
Так вот я и говорю о том, что использовать исключения для таких целей это невменяемо.
Можно еще добавить, что Линус Торвальдс (хоть он и сишник) пишет: "... if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program." То есть, такое количество циклов говорит разве что о плохом дизайне проекта. Если же это какой-то супер-мега-алгоритм, то ... тут надо подумать, но точно не исключения
3
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 22:10 | 90 |
Хотите использовать goto - используйте, кто-то разве запрещает ?
Добавлено через 1 минуту Вы это скажите , я-то тут причем ? Добавлено через 2 минуты Ну думайте...я себя от этого избавлю, в даном вопросе. Добавлено через 1 минуту Разве кто-то утверждал иное ?
0
|
ForEveR
|
05.08.2011, 22:14
#91
|
Не по теме: Эхх. А в питоне исключения не только для того, чтобы сообщить об ошибке. На правах рекламы:D
0
|
05.08.2011, 22:15 | 92 |
Зло порождает только зло, о чем и речь, так что не в goto дело и не в исключениях, просто каждый инструмент надо применять по назначению, а не в качестве костылей.
То есть топором надо дрова рубить, а не гвозди заколачивать или бриться. Это конечно тоже можно, но страшно опасно.
1
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 22:18 | 93 |
Ок. Какой для этого случая инструмент вменяемый ? goto, исключения, флаги(bool) отпадают.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.08.2011, 22:19 | 94 |
asics, Не использовать таких циклов) Очевидно же)
2
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 22:21 | 95 |
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.08.2011, 22:22 | 96 |
asics, Большой цикл всегда имеется возможность разбить на функции. Конечно, мы плодим лишние сущности, но этот способ более менее вменяемый.
1
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
|
05.08.2011, 22:24 | 97 |
ForEveR, Та ладно, нет ответа - значит нет, я же только спросил...
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
||||||
05.08.2011, 22:26 | 98 | |||||
не совсем вменяемый (может даже очень не вменяемый) но ничего перечисленного нет
0
|
05.08.2011, 22:33 | 99 | |||||
ValeryS, нарушается принцип DRY (Don't Repeat Yourself). Условия цикла дублируются. Выход из ситуации ну очень прост - добавить дополнительную сущность:
1
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
05.08.2011, 22:42 | 100 |
0
|
05.08.2011, 22:42 | |
05.08.2011, 22:42 | |
Помогаю со студенческими работами здесь
100
Посоветуйте новичку книжку или сайт, где описывается создание графического интерфейса в VC Посоветуйте новичку Посоветуйте новичку Посоветуйте новичку!! Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |