Новые вопросы - какая функция определяет наличие или отсутствие утечек памяти?
Я скачал ВинАДУ, поставил, как подключить пакет, содержащий заголовки виндовых библиотек? with ADA.Windows не рабтает, нет такого пакета.
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| TarasBer |
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Новые вопросы - какая функция определяет наличие или отсутствие утечек памяти?
Я скачал ВинАДУ, поставил, как подключить пакет, содержащий заголовки виндовых библиотек? with ADA.Windows не рабтает, нет такого пакета. -------------------- |
![]() ![]() |
| volvo |
Сообщение
#2
|
|
Гость |
Цитата По поводу самой функции Do_Tree возражений нету, кстати? Я бы немного "разгрузил" функцию от множества if/end if. То есть, вынес бы выброс исключений в отдельные функции (там всего два вида выбрасывается, так что всего 2 доп. функции - Check_IA и Check_BB), по проверке условия. Один фиг, когда ты получаешь исключение - получаешь и Call stack traceback locations, которые можно преобразовать в названия процедур:Ну, и вот так я б не написал: Цитата while Was_Token loop while Was_Token loop |
TarasBer Отлов утечек памяти - GNAT 7.02.2011 14:51
volvo Целый пакет есть для этого:
with GNAT.Debug_Pools;… 7.02.2011 15:18
TarasBer > Целый пакет есть для этого:
Всё по нулям выв… 7.02.2011 15:58
volvo Не навсегда, а для данного проекта.
Странно... По… 7.02.2011 16:19
TarasBer Всё равно непонятно. Как его подключить к указател… 7.02.2011 16:34
volvo , то не надо его подключать. Это только средство о… 7.02.2011 17:15
TarasBer > Закончил отладку (убедился, что утечек нет) -… 7.02.2011 17:36
volvo Можно, но это плохая идея. Дело в том, что глобаль… 7.02.2011 19:24
TarasBer > ("-gnateDDEBUGGING=True")
А для эт… 7.02.2011 19:50
volvo Разумеется. Ключ -gnateD создает символ для условн… 7.02.2011 20:21
TarasBer В общем, заставить определять некорректные выражен… 8.02.2011 16:34
volvo Ну, в принципе все нормально. Только непонятно, по… 8.02.2011 18:36
TarasBer Summ и Prod пока действительно не нужны. Это я доб… 8.02.2011 18:54
volvo Ну да, и так тоже можно...
Можешь, конечно, напис… 8.02.2011 19:25
TarasBer > Можешь, конечно, написать, только компилирова… 8.02.2011 19:43
volvo Хм... А чего ты вручную организуешь циклы по конте… 9.02.2011 0:18
-TarasBer- > Да и еще я где-то видел цикл по всему контейн… 9.02.2011 1:21
TarasBer А как сделать так, чтобы код между
#if Test_Lea… 9.02.2011 15:15
volvo & ("-gnateDTest_Leaks=False") 9.02.2011 15:25
TarasBer Тоже не помогло. Главное, я нажимаю ctrl+F9, а про… 9.02.2011 15:46
volvo После того, как внес изменения (если делал это чер… 9.02.2011 16:10
TarasBer > В настройках проекта Recompile if switches ch… 9.02.2011 16:20
volvo Ну, там например не было препроцессора. А здесь ма… 9.02.2011 16:47
TarasBer > Ну, там например не было препроцессора.
В та… 9.02.2011 16:54
volvo Это не препроцессор. Вот когда перед компиляцией ф… 9.02.2011 17:17
TarasBer > А комбинировать условия через Or/And?
or:
{… 9.02.2011 17:31
volvo Затем, что не всегда допустимо править исходники. … 9.02.2011 17:50
TarasBer > Вот если я хочу в программу запихать дату и в… 9.02.2011 18:30
volvo Ага, щаззз...
with ada.Calendar;
with ada.Calenda… 9.02.2011 18:50
TarasBer То есть константы считаются не компилятором, а про… 9.02.2011 19:04
volvo Ada.Calendar.Clock - это все-таки функция. То есть… 9.02.2011 21:26
TarasBer Ну это тоже можно.
Гораздо хуже, что операторы и ф… 10.02.2011 15:36
volvo А что мне надо сделать (какую строку входную заста… 10.02.2011 16:59
TarasBer В данном случае оно не вызывается, потому что прог… 10.02.2011 17:06
volvo Ну, тогда без проверки:
function To_Vector (A … 10.02.2011 18:05
TarasBer Я так и не понял механизм контролируемых типов. Чт… 21.02.2011 21:10
volvo Если дословно (буква в букву) переписать все, что … 21.02.2011 21:41
-TarasBer- > Это жестко зашито в GNAT.
То есть работает и… 21.02.2011 23:03
volvo Хм. Ну, разницы с тем, что я привел - никакой. И т… 22.02.2011 2:38
-TarasBer- А, ну то есть ровно то, что я и сказал, судя по ка… 22.02.2011 3:29
TarasBer Ещё вопрос.
Контролируемые объекты, созданные, как… 22.02.2011 15:22
volvo Во-первых, не надо делать лишних вещей, Ада позвол… 22.02.2011 16:42
TarasBer > Куда девалась память (часть 1)
> Куда дева… 22.02.2011 18:46
volvo Я сомневаюсь, что это вообще исправимо. Где-то на … 22.02.2011 18:54
TarasBer > тем более что подавляющее большинство разрабо… 22.02.2011 19:39
volvo
Да, пока я оставил и там и там, сервисы Гугла был… 22.02.2011 19:48
TarasBer Расширенный возврат - мощная вещь, только зачем на… 24.02.2011 15:01
volvo Потому что не всегда можно обойтись без описания т… 24.02.2011 15:39
TarasBer > return Value do
Ну например return Value(1 .… 24.02.2011 16:46
volvo У меня системная кодировка = Hebrew (win 1255), не… 24.02.2011 17:35
TarasBer > Это будет работать ровно до тех пор, пока ты … 24.02.2011 17:43
volvo Ты можешь гарантировать, что "просто строка… 24.02.2011 17:48
TarasBer Я уверен только в том, что на другой машине, где с… 24.02.2011 18:34
TarasBer Решил я применить расширенный возврат к функции пр… 14.03.2011 16:19
volvo Внимательнее будь. Это основа успеха при освоении … 14.03.2011 18:05
TarasBer И всё-таки, как это сделать без непроверенной конв… 14.03.2011 18:19
volvo Да легко:
function To_Vector(a: Key_Arr) return K… 14.03.2011 19:26
TarasBer Это уже получше.
И ещё вопрос: как унаследоваться … 14.03.2011 19:32
volvo Непонятно, зачем наследоваться от отдельного типа,… 14.03.2011 20:56![]() ![]() |
|
Текстовая версия | 5.11.2025 6:37 |