|
0 / 0 / 0
Регистрация: 22.07.2016
Сообщений: 16
|
|||||||||||||||||||||
Объясните, на что ругается компилятор, и как это понимать?22.07.2016, 23:12. Показов 2930. Ответов 48
Метки нет (Все метки)
Здравствуйте уважаемые форумчане.
Изучаю материал "Принципы и практика использования C++" Страуструпа. Остановился на главе "Ошибки". А именно не могу разобраться с примером, связанным с исключениями. Вот текст программы.
. Но стоит поменять строку
Также я думаю, стоит упомянуть, что определение функции "error()" производится в заголовочном файле "std_lib_facilities.h" вот так вот:
P.S. Пользуюсь Dev-C++.
0
|
|||||||||||||||||||||
| 22.07.2016, 23:12 | |
|
Ответы с готовыми решениями:
48
Задача - Кольца. Кто сможет, объясните мне , как это понимать? Это как понимать? Забанили что ли? Что это такое? Как понимать этот код? |
|
0 / 0 / 0
Регистрация: 22.07.2016
Сообщений: 16
|
|
| 24.07.2016, 17:51 [ТС] | |
|
Это всё "std_lib_facilities.h" делает. Вот ссылка на него. Скачать не получается почему-то. Создаётся файл текстовый. Кидается в него текст, сохраняется как std_lib_facilities.h и подключается через "#include". И будет и ошибка в моём примере, и исключение будет. ![]() P.S. Автор просит использовать этот заголовочный.
0
|
|
|
257 / 234 / 185
Регистрация: 02.04.2016
Сообщений: 898
|
||||||
| 24.07.2016, 17:53 | ||||||
|
Работает для int в Visual Studio Community 2015, у тебя свой max int может быть другой
mikhalxaos, Посмотри год издания книги
0
|
||||||
|
0 / 0 / 0
Регистрация: 22.07.2016
Сообщений: 16
|
||
| 24.07.2016, 17:54 [ТС] | ||
Не подумал. Спасибо. Мелочь, а приятно.
0
|
||
|
257 / 234 / 185
Регистрация: 02.04.2016
Сообщений: 898
|
||||||
| 24.07.2016, 17:57 | ||||||
mikhalxaos, В программировании надо мозгом маленько за пределы математики вылезать, тут свои правила есть еще)
1
|
||||||
|
0 / 0 / 0
Регистрация: 22.07.2016
Сообщений: 16
|
|
| 24.07.2016, 18:00 [ТС] | |
|
Хорошо, всем спасибо. Будем стараться вылезать за пределы математики и не вылезать за пределы векторов.
0
|
|
|
257 / 234 / 185
Регистрация: 02.04.2016
Сообщений: 898
|
|
| 24.07.2016, 18:05 | |
|
mikhalxaos, Удачи)
0
|
|
|
Заблокирован
|
|||
| 24.07.2016, 18:45 | |||
Добавлено через 1 минуту Правилось вот так вобщем error(string("Ошибка")); (т.е задаём конкретную реализацию перегруженной функции), на счёт всего остального, конечно же без скобки после мэйна работать не будет, сказки конечно можно рассказывать долго, факты просто другие. Не по теме: (м.б ты фейк/клон угги? :))
0
|
|||
|
0 / 0 / 0
Регистрация: 22.07.2016
Сообщений: 16
|
|
| 24.07.2016, 18:56 [ТС] | |
|
С трудом понял, что тебе показать.
![]() Да, я сам уже начинаю понимать что этот std_lib_facilyties какие то неясности в моё обучение вводит. Притом что я его прочитать его затрудняюсь из недостатка знаний. Насчёт фигурной скобки после main() в этом коде http://codepad.org/rKlxzlHZ. 1 вариант - это вставить скобку после main() перед try. 2 вариант - это убрать самую последнюю скобку, а "return 0" переместить в конец блока try{}. В обоих вариантах на моей Dev-C++ работает.
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 24.07.2016, 19:12 | |||||||
|
который позволяет объявить ловушку исключений не внутри функции, а совместить такое объявление с объявлением самой функцией. или с конструктором. с конструктором есть некоторые нюансы: http://rextester.com/UYK20591
таким образом получается, что блок try - это основное туловище функции (или конструктора) а ловушки - ну дополнения, которые так же являются частью функции (или конструктора). ну и самое главное: если исключение полетело из конструктора, то уже нет возможности сохранить ему жизнь. никакие ловушки его уже не спасут.
1
|
|||||||
|
Заблокирован
|
||||||||||||
| 24.07.2016, 19:18 | ||||||||||||
|
mikhalxaos, я тебе сказал что правится всё вот так
0
|
||||||||||||
|
Заблокирован
|
||
| 24.07.2016, 19:22 | ||
|
0
|
||
|
257 / 234 / 185
Регистрация: 02.04.2016
Сообщений: 898
|
|
| 24.07.2016, 19:22 | |
|
hoggy, Толково все расписали
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 24.07.2016, 19:26 | ||
|
про деструктор я забыл. правда мне не понятно, какой смысл от этой конструкции в деструкторе то? успеть заллогировать, что сейчас процессу приключится секир-башка?
0
|
||
|
Неэпический
|
|||||||
| 24.07.2016, 19:32 | |||||||
0
|
|||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 24.07.2016, 19:40 | |||||||
|
1. когда эксепшен вылетает из нашего диструктора. мы можем внутри поставить ловушку, и все будет ок. это то, что описали вы. но это тоже самое, как если бы ловушка стояла внутри функции. 2. вообще то киллер-фича function-try-block заключается жеж в том, что можно выловить эксепшены, которые просыпались из базовых классов: http://rextester.com/NVWD77994
0
|
|||||||
|
Неэпический
|
|||||||
| 24.07.2016, 19:44 | |||||||
|
Не по теме: Unknownx, ошибка permission denied :D Добавлено через 4 минуты
0
|
|||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 24.07.2016, 19:47 | ||
|
деструктор же базы выполняется после деструктора наследника. ну тогда я вообще не понимаю, в чем профит для деструктора)
0
|
||
|
Неэпический
|
||
| 24.07.2016, 19:48 | ||
|
hoggy,
![]()
0
|
||
| 24.07.2016, 19:48 | |
|
Помогаю со студенческими работами здесь
40
Что значит условие окончания цикла i<=x/i? Как это понимать? Почему компилятор ругается на то, что else относится к if? Не могу понять на что ругается компилятор Как быть с "\", если компилятор ругается, что отсутствует закрывающая скобка в регулярке Компилятор ругается, не разрешенная внешняя ссылка, что не так? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|