Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Аналог try finally в С++ / 14 сообщений из 14, страница 1 из 1
09.12.2017, 15:21
    #39567044
Семен.Семенович
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Уважаемые программисты С++

Подскажите начинающему

Есть ли в С++ аналог Java-конструкции

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
try {

do something

} finally {
 
I will execute it even in case of return or exception in main block
 
}


?
...
Рейтинг: 0 / 0
09.12.2017, 15:25
    #39567045
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
В стандартном С++ - нет. Обычно вместо неё применяются деструкторы. В особо сложных
случаях - дублируется код в catch.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
09.12.2017, 15:28
    #39567046
Семен.Семенович
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
main() {
Obj b;
}

Здесь деструктор класс Obj вызовется в любом случае даже в случае ошибок ?
...
Рейтинг: 0 / 0
09.12.2017, 15:30
    #39567049
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Семен.СеменовичЗдесь деструктор класс Obj вызовется в любом случае даже в случае ошибок ?

Да. За исключением случаев, когда ошибка произошла раньше, чем дошло до создания объекта.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
09.12.2017, 15:32
    #39567050
Семен.Семенович
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Спасибо.
...
Рейтинг: 0 / 0
10.12.2017, 20:04
    #39567380
Cerebrum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
...
Рейтинг: 0 / 0
10.12.2017, 20:56
    #39567394
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Cerebrum,

Это не С++
...
Рейтинг: 0 / 0
11.12.2017, 14:39
    #39567680
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Семен.СеменовичУважаемые программисты С++

Подскажите начинающему

Есть ли в С++ аналог Java-конструкции

?

Нет, аналога нет.
Для замены надо использовать RAII, найдёшь в гугле.
...
Рейтинг: 0 / 0
11.12.2017, 14:42
    #39567685
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Cerebrum под Windows есть

Это не под Windows, это под Microsoft VC
...
Рейтинг: 0 / 0
11.12.2017, 15:01
    #39567699
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
MasterZivCerebrum под Windows есть

Это не под Windows, это под Microsoft VCскорее всего скоро и в стандарт добавят, срок патента борланда вышел недавно

так что даже гипотетически уже ничего не мешает это сделать
...
Рейтинг: 0 / 0
11.12.2017, 16:19
    #39567782
rdb_dev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
kealon(Ruslan), в мингэвэшный гнус уже добавили SEH.
...
Рейтинг: 0 / 0
12.12.2017, 05:16
    #39568053
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
Там вроде ещё какие-то условия на использование __try есть, я как-то пытался, у меня студия выругалась на то, что у меня в коде есть что-то, что несовместимо с __try.
...
Рейтинг: 0 / 0
12.12.2017, 09:26
    #39568104
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
CEMbТам вроде ещё какие-то условия на использование __try есть, я как-то пытался, у меня студия выругалась на то, что у меня в коде есть что-то, что несовместимо с __try.
само по себе дикая жесть в современном С++, использование всё больше и больше пытаются абстрагировать от системы

тынц , хорошо объясняют
...
Рейтинг: 0 / 0
13.12.2017, 10:29
    #39568832
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Аналог try finally в С++
CEMbТам вроде ещё какие-то условия на использование __try есть, я как-то пытался, у меня студия выругалась на то, что у меня в коде есть что-то, что несовместимо с __try.

Условия простые, SEH и С++ exceptios нельзя мешать в одном фрейме стека (в одной функции то есть).
Либо одно, либо другое.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Аналог try finally в С++ / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]