Новые вопросы - какая функция определяет наличие или отсутствие утечек памяти?
Я скачал ВинАДУ, поставил, как подключить пакет, содержащий заголовки виндовых библиотек? with ADA.Windows не рабтает, нет такого пакета.
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| TarasBer |
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Новые вопросы - какая функция определяет наличие или отсутствие утечек памяти?
Я скачал ВинАДУ, поставил, как подключить пакет, содержащий заголовки виндовых библиотек? with ADA.Windows не рабтает, нет такого пакета. -------------------- |
![]() ![]() |
| -TarasBer- |
Сообщение
#2
|
|
Гость |
А, ну то есть ровно то, что я и сказал, судя по картинке.
Для тех переменных, для которых можно предсказать (для всех, упоминаемых во всех вложенных блоках данной процедуры), выделяем место как обычно, для тех, для которых нельзя, выделяем указатель как обычно, а их самих выделяем на вершине стека. Это хорошо, что там не дёргается куча, всё собирается простыми алгоритмами прямо на стеке. |
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
volvo Я бы немного "разгрузил" функцию от множ… 10.02.2011 3:08
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 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![]() ![]() |
|
Текстовая версия | 6.11.2025 3:26 |