Jestem całkiem nowy dla Delphi i próbuję użyć biblioteki Kolekcje DEHL. (zobacz http://code.google.com/p/delphi-coll/) Mam trochę problemów z nim z perspektywy IDE. Kompiluje się i działa poprawnie, ale Delphi XE pokazuje błędy wszędzie, gdzie używam biblioteki HashSet. Największą skargą jest to, że nie mogę używać kodu.Błędy przy użyciu THashSet z biblioteki kolekcji DeHL
Pierwsze miejsce pojawia się błąd w deklaracji obiektu:
uses
SysUtils, Windows, Collections.Base, Collections.Sets, Collections.Lists,
adscnnct, adstable,
uOtherClass;
type
OneClass = class(OtherClass)
private
_bad: THashSet<string>; // THashSet underlined
_good: TList<string>; // No problems
end;
państw o błędach: „argumenty typu nie pasuje do ograniczenia”
Nie sądzę, że to konfiguracja, jak mogę używaj TLista w porządku, ale oto jak to skonfigurowałem: skopiowałem bibliotekę do Projects/Libs/DeHLCollections/Library i skompilowałem bibliotekę do Projects/Libs/bin. Włączyłem katalog bin w mojej ścieżce biblioteki globalnej, która dostarczyła go do kompilacji i uruchomienia. Próbowałem dodać do niego wszystko (/ libs,/DeHLCollections,/Library), mając nadzieję, że IDE pomoże mi, ale wydaje się, że to nie pomaga.
W każdym razie, aby to naprawić, czy po prostu muszę sobie z tym poradzić?
Korzystanie DeHL kolekcjach wersji 1.1.1.119
Pozwolę sobie również powiedzieć, że generics nie są GDZIE ROZPOCZĄĆ jako nowy programator delphi. To jak zaczynać od pisania serwerów DCOM drugiego dnia jako programista Windows C++. –
Możesz zacząć od nauki i przestrzegania idiomatycznej praktyki Delphi nazywania klas tak, aby zaczynały się od T i prywatnych lub chronionych pól, zaczynając od F i używając CamelCasingLikeThisBecauseItsADelphiReligion. (TOneClass, nie OneClass, a nazwa pola FBad nie pole _bad). –
@Warren - Dziękuję za kilka zgłoszeń. Sądzę, że przyniosę kilka z nich za pomocą java i php. Czy mogę zapytać, co oznacza T na zajęciach? T dla pól ma sens. Gdziekolwiek mogę szukać takich standardowych konwencji delphi? Również, zaczynając od leków generycznych, może być trochę szybko, ale co to jest facet, który musi zachować zestaw powinien zrobić? W tym przypadku jest to po prostu ciąg znaków, więc jeśli istnieje inne podejście, jestem otwarty na sugestie. Po prostu robię to tak, jak jestem przyzwyczajony. –