Страница 3 из 4

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 16:25
Оксалайя
Сионист писал(а):Теория и практика c++.

Ок. Читаем аннотацию
Книга Герберта Шилдта, одного из самых известных авторов компьютерной литературы, посвящена обсуждению сложных вопросов программирования. В ней подробно рассмотрены параметризованные функции и классы, а также такие задачи програм-мирования, как реализация разреженных массивов, построение программ разбора математических выражений, алгоритмы шифрования и сжатия данных, а также проб-лемы разработки собственных языков программирования и написания интеграторов для них. Приводятся ценные практические советы по приемам и методам работы, а также тексты готовых работающих программ.
Сложных, знаете ли, вопросов, а не вопросов, не достойных даже студента-первокурсника. Вы, наверное, и считать в детстве учились сразу по Фихтенгольцу и возмущались, что сложение и вычитание там "туманно" описаны. Это книжка для взрослых дядей и тёть, который уже имеют некоторые навыки программирования на С++ и УЖЕ знают, как бросать исключения. Не льстите себе, почитайте что-нибудь попроще, например "Базовый курс С++" Вашего любимого Шилдта.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 16:28
Romeo
Сионист писал(а):string и wstring тоже описаны вместе. Но это не значит, что нельзя написать свой string отдельно от wstring. Другое дело, что писать придётся много, самостоятельно реализовывать все операции над строками и долго отлаживать. Но свой string написать можно. И я его даже писал. Но одно дело все операции над строками даже одного типа, а совсем другое одно исключение. И я не инклажу windows.h ради одной функции. Я инклажу windows.h ради и WinMain, и функций GDI, и типов параметров функций GDI.
Блин, вот всё-таки с логикой нелады. Невозможно спорить, так как логические переходы не индуктивны. Как всё, что ты написал опровергает то, что написал я? Я что, предлагал свой string реализовывать?

И, кстати, по поводу string и wstring - это вообще полный фейл. На самом деле они не описаны вместе. Это вообще не два разных класса. Физически это один и тот же класс, а два указанных типа - это typedef'ы с разными темплейтными параметрами.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 16:30
Romeo
Оксалайя писал(а): Сложных, знаете ли, вопросов, а не вопросов, не достойных даже студента-первокурсника. Вы, наверное, и считать в детстве учились сразу по Фихтенгольцу и возмущались, что сложение и вычитание там "туманно" описаны. Это книжка для взрослых дядей и тёть, который уже имеют некоторые навыки программирования на С++ и УЖЕ знают, как бросать исключения. Не льстите себе, почитайте что-нибудь попроще, например "Базовый курс С++" Вашего любимого Шилдта.
В точку.

Сионист, нужно было начинать с основ, а не тратить восемь месяцев (о Боже, держите меня семеро от этой цифры) на книжку, к которой ты просто ещё не был готов.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 17:01
Сионист
Romeo писал(а):Странная логика. Ты восемь месяцев как контрагрумент используешь? Я как раз наоборот говорю, что не стоило терять столько времени, можно было просто прочесть статейку и всё понять по исключениям.
Я месяцев восемь угробил на гугление и чтение по теме, прежде чем её здесь создать. Толку нет.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 17:19
Сионист
Оксалайя писал(а):Не льстите себе, почитайте что-нибудь попроще, например "Базовый курс С++" Вашего любимого Шилдта.
Что есть, то и читал. А за название спасибо.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 17:21
Romeo
То есть это я просто везунчик, что догадался написать в поисковике "Исключения С++" и по первой же ссылке нашёл не самую лучшую и глубокую, но всё же достаточно понятную статейку? Одним запросом сэкономил восемь месяцев своей жизни, так выходит? Не верю, что бывает такое!

А книгу ты читал не по теме как раз. Аннотация это явно показывает. Начинать нужно с основ. Сразу лезть в дебри и надеяться, что основы как-нибудь сами собой осознаются - это крайне самонадеянно. Я вообще-то не люблю Шилдта, но если уж этот автор тебе приглянулся, то у него есть книжка "С++ для начинающих", который хоть как-то может претендовать на звание справочника по языку. Там исключения освещены достаточно подробно в разделе "Обработка исключительных ситуаций".

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 18:55
Сионист
Romeo писал(а):ТТо есть это я просто везунчик, что догадался написать в поисковике "Исключения С++" и по первой же ссылке нашёл не самую лучшую и глубокую, но всё же достаточно понятную статейку? Одним запросом сэкономил восемь месяцев своей жизни, так выходит? Не верю, что бывает такое!
Я вводил и границы массива c++, и исключения c++, и исключения выхода за границы, и много чего ещё.

Re: Как бросить своё исключение?

Добавлено: 02 сен 2015, 19:51
Romeo
Стоп. Речь шла вообще об исключениях. Ты сказал, что не знаешь даже, что писать после throw и как оформить catch. То есть знаний по теме нет вообще.

Почему, когда я пишу, то сразу же находится куча статьей? Вот раздача гугла на запрос "Исключения С++" - ссылка

Первая ссылка идёт на кратенькую статью неизвестного автора, а вторая ссылка идёт, кстати, в MSDN, где всё расписано достаточно академически.

Я действительно не понимаю, зачем было тратить на поиски восемь месяцев. За это время некоторые ребёнка вынашивают...

Re: Как бросить своё исключение?

Добавлено: 03 сен 2015, 06:29
Сионист
Romeo писал(а):Стоп. Речь шла вообще об исключениях. Ты сказал, что не знаешь даже, что писать после throw и как оформить catch. То есть знаний по теме нет вообще.

Почему, когда я пишу, то сразу же находится куча статьей?
Так две, или куча? Судя по тому, как Вы путаетесь в числах, не искали именно Вы. Или только сейчас поискали. Мне тоже вышла куча, но всей кучи не хватило.

Re: Как бросить своё исключение?

Добавлено: 03 сен 2015, 08:31
somewhere
Сионист, твоя основная задача - научиться учиться, как бы не комично это звучало. Эта способность, по задумке, должна была быть усвоена еще в школе. В запущеных случаях - в институте. Не имея таких базовых способностей программист обречен. Особенность нашей профессии - это постоянное развитие и самообучение, потому что технологии развиваются столь быстро, что когда освоишь в достаточной степени хорошо одно направление, оно оказывается уже давно устаревшим и не востребованным на рынке труда.
Говоря честно, я и сам забыл название оператора выбрасывающего исключение на С, но спустя пару минут я уже знаю его название, вспоминаю синтаксис и способы применения, в дополнение умный поисковик подсказывает мне наиболее популярные и часто посещаемые страницы по этой теме, в которой все разжевано и разложено по полочкам. Если не осиливаешь переварить эти статьи, то очевидно не хватает каких то опорных знаний и имеет смысл почитать что-то простенькое, чтобы достигнуть понимания.
Причем "прочитать книгу" вовсе не означает чисто механическое действие, а подразумевает осмысливание и достижение понимания, вплоть до понимания смысла каждого предложения в ней. За всю жизнь можно прочитать всего одну книгу, но настолько качественно, что переданное ею логическая информация даст большое развитие аналитическому мышлению со всеми вытекающими. И тогда наступит понимание того, что в остальных книгах то же самое, только представлено другими словоформами и степенью освещения материала.
Особенно полезно читать исходники и примеры, некоторые из них так качественно оформлены что даже не нуждаются в комментариях.