Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.65/60: Рейтинг темы: голосов - 60, средняя оценка - 4.65
 Аватар для gore-lykovoe
32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414

Посоветуйте новичку в С++

31.07.2011, 17:04. Показов 14262. Ответов 126
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
После школьной программы знаком с основами Паскаля, Делфи. Скоро поступлю в ВУЗ. Скорей всего буду изучать там С++. Решил немного подготовиться.
Скачал книгу Либерти (21 день).
Сейчас остановился на девятом дне. "Прошел" указатели и ссылки. Возникают большие трудности при использовании указателей и ссылок в классах. Утечки, нулевые объекты, мины замедленного действия, одним словом остались для меня непонятными.
Во-первых мне интересно - я виноват? Или это тяжелые темы для всех? Сколько вы потратили дней, чтобы полностью разобраться в этих темах? Вся сложность в них в том, что надо понимать, как записывается информация, где хранится, когда будет запускаться конструктор, copy конструктор, деструктор. Как надо использовать функции чтобы не запускать copy конструктор.
Во-вторых я хочу спросить, а надо ли мне новичку, знакомым с С++ 7 дней, разбираться в таких, как мне кажется профессиональных вещах? Может можноо обратиться к ним позже? Или дальше без этих тем не уедешь?
Тоесть основной вопрос: если остались непонятки в этих темах, можно изучать дальше, а потом вернуться к ним? Или лучше сейчас все понять?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.07.2011, 17:04
Ответы с готовыми решениями:

посоветуйте новичку в С++
Здравствуйте! Я изучаю С++. С начала я скачала книгу Либерти, но было очень трудно. Сейчас я изучаю из книги "Шилдт Г. С++ Базовый...

посоветуйте литературу, новичку
:help: знаю, конечно, что в разделе "важно" (но всё-таки один раз живём :beach:) эта тема уже обсуждена, но всё-таки можете посоветовать...

Посоветуйте книгу/-и новичку
Доброе время суток человечество! Посоветуйте пожалуйста книгу по с++ новичку, желательно поновее. и если можно ссылку на книгу. Заранее...

126
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
06.08.2011, 16:26
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Именно! Для объекта, созданного операцией new() деструктор вызовется только при выполнении delete(). При раскрутке стека для таких объектов деструктор не вызывается.
Это же очевидно, речь про статически созданные объекты. В этом плане разницы никакой между goto и exceptions нет.
0
бжни
 Аватар для alex_x_x
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
06.08.2011, 16:40
с динамическими - умные указатели, и будет все освобождаться

Добавлено через 2 минуты
они же безопасны к исключениям и всему прочему
0
Заблокирован
06.08.2011, 18:54
Цитата Сообщение от grizlik78 Посмотреть сообщение
Это, разумеется, не так. По-крайней мере для компилятора, соответствующего стандарту. Оператор goto так же выполняет "раскрутку стека" как и throw или break, это полноценный оператор C++. Деструкторы не вызываются только при выходе из программы функциями exit() или abort().
Но это всё-равно не значит, что стоит применять goto где попало.
да действительно так и есть. Я ошибся. Я думал goto просто на безусловный переход заменяется, однако перед ними компилятор ещё и для всех автоматических объектов вызовы деструкторов навставлял. Неожидал
0
0 / 0 / 0
Регистрация: 02.08.2011
Сообщений: 12
08.08.2011, 08:22
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Сыроежка, если ты собираешься реализовать контейнер вроде вектора, то указатели тебе нужны. А если ты собираешься использовать контейнер вроде вектора, то указатели тебе нафиг не нужны.
я незнаю какой сложности вы программы пишите, но например, у нас был такой предмет "дискретная оптимизация" где нужно было реализовывать алгоритмы Флойда, Задачу коммивояжёра и т д т е задачи из дискретной математики, и как не странно, используя уже существующие контейнеры, были непонятные ошибки, хоть с виду код был очень простой и без ошибок, т е данные контейнеры косячили сами, с определенными параметрами, так вот чтобы избежать этого приходилось самим их описывать, а без знания как все это работает, вы бы и не догадались в чем ошибка, и сидели бы и дальше вдупляли в простейший код стуча головой ап стенку "где же тут может быть ошибка!?"
если вы хотите быть "хорошим" программистом, вам надо знать как все работает, а если хотите программировать на уровне пользователя, то пользуйтесь стандартными контейнерами. Я не говорю, что ими ненадо пользоваться, конечно надо, но порой лучше без них)
разумеется такая ерунда типа вектора врятли будет косячить.
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
08.08.2011, 12:16
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Domenick Посмотреть сообщение
я незнаю какой сложности вы программы пишите, но например, у нас был такой предмет "дискретная оптимизация" где нужно было реализовывать алгоритмы Флойда, Задачу коммивояжёра и т д т е задачи из дискретной математики, и как не странно, используя уже существующие контейнеры, были непонятные ошибки, хоть с виду код был очень простой и без ошибок, т е данные контейнеры косячили сами, с определенными параметрами, так вот чтобы избежать этого приходилось самим их описывать, а без знания как все это работает, вы бы и не догадались в чем ошибка, и сидели бы и дальше вдупляли в простейший код стуча головой ап стенку "где же тут может быть ошибка!?"
если вы хотите быть "хорошим" программистом, вам надо знать как все работает, а если хотите программировать на уровне пользователя, то пользуйтесь стандартными контейнерами. Я не говорю, что ими ненадо пользоваться, конечно надо, но порой лучше без них)
разумеется такая ерунда типа вектора врятли будет косячить.
Это не контейнеры косячили, а конкретно ВЫ косячили...
Понимать работу контейнеров программист-профи ОБЯЗАН - это часть его профессиональных знаний и умений. Писать собственный велосипед - это как раз удел новичков, которые еще не стали серьезными профи.
Я вот сейчас с матрицами 20000*20000 работаю и всякими дополнительными к ним контейнерами, вроде вектора списков. Приходится списки сливать-разливать... Да я б застрелился бы, если б мне пришлось самому все это реализовать!
5
0 / 0 / 0
Регистрация: 02.08.2011
Сообщений: 12
08.08.2011, 14:34
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Это не контейнеры косячили, а конкретно ВЫ косячили...
бываеют такие ситуации, когда немного не понимая как работает какойто метод, можно ошибится применив его, для немного другой задачи.
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
08.08.2011, 14:52
Цитата Сообщение от Domenick Посмотреть сообщение
бываеют такие ситуации, когда немного не понимая как работает какойто метод, можно ошибится применив его, для немного другой задачи.
Вот именно! Это просто означает, что "тщательнЕе надо", как говорил Жванецкий...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.08.2011, 14:52

Посоветуйте новичку порядок действий
Посоветуйте новичку, в двух словах, порядок действий и название команд. Требуется, на Visual C, написать прогу, которая бы заходила на...

Посоветуйте новичку книжку или сайт, где описывается создание графического интерфейса в VC
Добрый вечер, подскажите пожалуйста какую нибудь книжку или сайт где описывается создание графического интерфейса в VC.

Посоветуйте новичку
Всем привет, посоветуй пожалуйста хороший учебник по php. Я почитал эту тему https://www.cyberforum.ru/php-beginners/thread125023.html...

Посоветуйте новичку
Хочу собрать комп до 100к.Вот то, что сам насобирал: 1)процессор - Intel core i7-6700K Box 2)видеокарта - MSI GeForce GTX1070 Gaming 8G...

Посоветуйте новичку!!
Здравствуйте, пару минут проведя на форуме меня заинтересовал раздел вебпрограммирование (Решил как раз спросить). Я сам начинающий. Хотел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
127
Ответ Создать тему
Новые блоги и статьи
BitTorrent (версия 7.11 English) и Меню Настройки
russiannick 15.11.2026
Пункты, отвечающие за отключение обновлений в BitTorrent версии 7. 11 (английской) Options Preferences General Language
Транслитерация текста с кириллицы на латиницу (вариант №4)
Maks 15.11.2026
Что-то я перемудрил с предыдущими версиями, в этот раз сделал всё проще, обратившись к функции "СтрокаЛатиницей" из типового общего модуля "СтроковыеФункцииКлиент". В данной функции нет апострофов,. . .
BitTorrent (версия 4.3.9) и Меню Настройки
russiannick 15.11.2026
В меню Настройки можно отключить автоматическое обновление программы. Карта этого меню приложена ниже. Нужный пункт выделен красным. Сервис Настройки Поведение
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки. Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён". Изменено отображение буквы Й. Добавлена. . .
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru