Procedury przeciążone a wady kompilatora Delphi 2007

Procedury przeciążone a wady kompilatora Delphi 2007
IN
  • Rejestracja:około 16 lat
  • Ostatnio:ponad rok
0

Witam.

Pytanie
Nie wiem jak to jest w innych wersjach Delphi ale mam taka drzazgę, która mi utrudnia kodzenie.
Było super jak były 2-3 moduły z różnymi typami a w nich (obrazowo dla uproszczenia):

Kopiuj
Czysc(var ATyp1: Typ1);overload;
Czysc(var AListaDynamiczna: Typ2);overload;
Kopiuj(var ATyp1: Typ1);overload;
Kopiuj(var AListaDynamiczna: Typ2);overload;
...

Wygodne to bo nie musze pisać Typ1Czysc(..) tylko Czysc(..)
Ale jak się zrobiło naście modułów i w każdym naście procedur po kilka przeciążonych dla każdego z rodzajów: Dodaj, Usun, Wytnij, Szukaj, Porownaj ... to pojawił się problem z kompilatorem.
Mianowicie przy kliknięciu PM gdzieś w ciele programu gdzie wywołuje procedurę z parametrami, nie przenosi mnie często do kodu procedury w odpowiednim module ale gdzieś na koniec a czasem nawet nie przenosi mnie do odpowiedniego modułu.
Np. hipotetycznie dodaję bitmapę to dynamicznej listy bitmap, chce sprawdzić co jest w procedurze, PM, Find Declaration i ląduje w zupełnie niewłasciwym module obsługującym rekordy a np z operacjami na String.

Czy macie podobne spostrzeżenia i czy ktoś sobie poradził bez zmiany kompilatora? Będę wdzięczny za sugestie.

Oczywiście dodam, że to się dzieje w momencie gdy wszystko się ładnie kompiluje i działa jak trzeba. Tylko z samą obsługą edytora jest dramat.

edytowany 5x, ostatnio: Integers
flowCRANE
Jeśli jest problem z funkcjami forum to powinieneś to zgłosić w dziale Coyote;
IN
ok, przerzuciłem
Azarien
skoro się kompiluje i działa, to nie pisz że „wada kompilatora”…
IN
nic innego mi nie przyszło do głowy,
_13th_Dragon
  • Rejestracja:prawie 20 lat
  • Ostatnio:11 dni
1

Ta wada ciągnie się jeszcze od Delphi 5, niestety.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
mychal
  • Rejestracja:ponad 15 lat
  • Ostatnio:ponad 8 lat
  • Lokalizacja:Przedmonitorze Górne
1

To raczej standard jeżeli chodzi o Delphi. W XE2 też tak jest (nie wiem jak w nowszych). Ja w takich sytuacjach używam dodatku CnPack. Będąc w odpowiednim unicie dajesz <CTRL> + D, wpisujesz fragment nazwy typu/funkcji/metody, wybierasz odpowiednią i Cię przenosi (zawsze trafia). Listę unitów w projekcie wyświetlasz poprzez <CTRL> + F12. Może i naokoło, ale idzie się przyzwyczaić ;]


I fart u die.
IN
  • Rejestracja:około 16 lat
  • Ostatnio:ponad rok
0

jakoś sobie radzę, wyszukiwanie i inne .. myślałem że przegiąłem z ilością przeciążeń. Co dziwne nawet w klasach przeciążenia "przeskoki"... ale skoro to standard... dzięki za odzew. Doczytam o "CnPack".

edytowany 2x, ostatnio: Integers
Opi
  • Rejestracja:ponad 20 lat
  • Ostatnio:13 dni
  • Postów:1030
1

Posortuj funkcje i procedury w kolejności takiej jak masz zadeklarowane w sekcji "type".

IN
  • Rejestracja:około 16 lat
  • Ostatnio:ponad rok
0

Ok. Może to coś pomoże, chociaż w większości przypadków może być ciężko. Większość funkcji opiera się na więcej niż jednym typie i do tego typy są zupełnie w innych modułach niż funkcje je obsługujące, mało tego są deklaracje

Kopiuj
type
var
procedury
...
type
var
procedury
...

ale może jakiś porządek uda się wprowadzić.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.