1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
| TarasBer |
27.09.2009 14:02
Сообщение
#41
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Значит, в BCB6 такая "хорошая" работа с памятью... О да, я крут, сел осваивать новый язык и тут же нашёл нехилый баг в компиляторе. Цитата Проверь на более новом Билдере. Попробуй проверить на другом С++ компиляторе, есть ли утечка там? Я попробую найти другой С++ компилятор, но это не так просто. -------------------- |
| volvo |
27.09.2009 14:09
Сообщение
#42
|
|
Гость |
Цитата но это не так просто. Чего сложного?http://www.codeblocks.org/downloads/5 (IDE вместе с компилятором и отладчиком, около 20Мб) |
| volvo |
27.09.2009 14:40
Сообщение
#43
|
|
Гость |
Цитата сел осваивать новый язык и тут же нашёл нехилый баг в компиляторе. Нет, этот баг нашел не ты, его нашли другие... Ты просто на него нарвался. На delphigroups.info проскакивала информация об ошибке, связанной с синтаксисом catch(...) на старых Билдерах, и о том, что желательно использовать конструкцию catch(Exception&) вместо нее... Так что сначала попробуй код:#include <exception>, и проверь, "утекает" ли по-прежнему память? |
| TarasBer |
28.09.2009 13:20
Сообщение
#44
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Помогло. Без делита - утечка. Мдааа. -------------------- |
| TarasBer |
28.09.2009 15:47
Сообщение
#45
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
А такой код, с удалением исключения, будет работать на новых билдерах?
-------------------- |
| volvo |
28.09.2009 19:01
Сообщение
#46
|
|
Гость |
Цитата А такой код, с удалением исключения, будет работать на новых билдерах? Нет, при попытке сделатьdelete &E;получишь Invalid pointer operation, и этим дело закончится. |
| TarasBer |
28.09.2009 19:23
Сообщение
#47
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Тогда какой #ифдеф на этот случай посоветуете? Я в них ноль, так как не приходилось сталкиваться с таким.
-------------------- |
| volvo |
28.09.2009 21:21
Сообщение
#48
|
|
Гость |
Насколько я помню номера компиляторов - так:
catch (Exception& e) 0x560 - это "чистый" BCB6, и еще 4 - с разными Service Pack-ами |
| TarasBer |
29.09.2009 9:35
Сообщение
#49
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
> && (__BORLANDC__ >= 0x560)
Ну, во-первых, у меня вроде 5.5, во-вторых, это условие говорит, что для более ранних версий этого бага не было? -------------------- |
| volvo |
29.09.2009 10:04
Сообщение
#50
|
|
Гость |
Ты спрашивал, как определить Билдер 6 директивами компиляции? Я тебе показал, как это делается... Нужно включить ВСЕ глючные версии - убирай нижнее условие, оставляй только верхнюю границу...
Баг был на всех Билдерах, как минимум до BDS 2006, если не до BDS 2007, только потом был исправлен. А если у тебя 5.5, то посмотри внимательно на название темы, и пойми, что телепаты обходят этот форум стороной. |
| TarasBer |
29.09.2009 13:45
Сообщение
#51
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Сообщение отредактировано: TarasBer - 29.09.2009 15:28 -------------------- |
| TarasBer |
29.09.2009 15:29
Сообщение
#52
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Как заставить встроенные функции модуля math не выводить ошибку в случае исключения? Если исключения ловлю Я, то зачем их ловилку всунули в модуль?!
-------------------- |
| TarasBer |
29.09.2009 20:28
Сообщение
#53
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Заменил матх на фастматх, обнаружил новый прикол.
gcvt виснет, если ему подсунуть exp(999) в консольном приложении. Сколько ещё багов встроено в этот замечательный компилятор? -------------------- |
![]() ![]() |
|
Текстовая версия | 9.12.2025 4:11 |