![]() |
![]() |
Bokul |
![]()
Сообщение
#1
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Реализовал объект многоугольник, который имеет неопределенное количество вершин. Но скорость работы с ним критическая, поэтому надо как можно сильнее его оптимизировать.
Вот, что он из себя представляет:
Кольцевой список
Модуль для работы с векторами
Программа для проверки минимальной работоспособности
Три модуля вмести: ![]() PS в принципе код прозрачен, но если что-то не понятно - спрашивайте. ![]() -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Я имею ввиду при каких данных происходит такая утечка.. При твоих... Copy+Paste из твоего первого сообщения + Build + Run = (результат ты видел) ![]() Цитата При подключении модуля windows к модулю Polygone, наверное, проходит совмещения типов и компилятор начинает сердится на строку Берем бубен, 3 раза обходим вокруг компа, не забывая пропеть какую-нибудь песню, напоминающую песнь чукчи в тундре (не забудь, именно ТРИ раза!!!), потом снова садимся за компьютер, меняем местами названия модулей:unit Polygone; и смотрим, что будет... ![]() Цитата Статистику надо собирать по каждой подпрограмме запускаемой во всех модулях? Я бы собирал статистику по каждому методу в программе... Для всех объектов - при вызове метода увеличить счетчик, и все... Потом пригодится... Распечатаешь все счетчики - сразу увидишь, что НАДО оптимизировать, а что НЕТ...Если то же самое сделаешь со временем - будет еще лучше, возможно метод-то вызывается 10 раз, но пожирает при этом 80% времени - его и будем ускорять... |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 4:38 |