no i gdzie ten WTF?? bo u mnie wyświetla static 6. Powiedzmy sobie może coś żeby to było jasne - ja używam Delphi a nie FP. I czy tam będzie AnsiString czy string czy PChar to po prostu działa.
Czytanie ze zrozumieniem: "Proponuję ustawić lokalną zmienną s na coś innego niż const". Nawet taką prostą instrukcję trudno zrozumieć? eh. Ulituję się, dopisz np. s:='static'+chr(random(256));
.
BTW ale oczywiście z tobą nie ma się co kłócić bo ty i tak wiesz lepiej...
dla mnie EOT jak chcesz to możesz dalej przedstawiać swoje teorie na temat zbawienia świata
To żegnam.
A generyk to wg ciebie magiczny twór nie zajmujący żadnego miejsca w pamięci nie mający wewnątrz siebie żadnego rekordu opisującego parę string => string? Musisz się przespać lub zacząć czytać podstawy programowania.
W implementacji FPC nie ma żadnego rekordu. To po prostu tobie się coś wydaje (jak widać dalej źle).
Niby jakim cudem te nakłady będą mniejsze? W generyku musisz co najmniej zdublować oryginalny string z listbox'a. No chyba że nawet nie przeczytałeś tytułu tematu lub nie zrozumiałeś (czytanie ze zrozumieniem się kłania) i myślisz że do listbox'a dodaje się dodatkowy string aby mieć mapę string -> string.
Czytanie ze zrozumieniem kazało mi założyć że chodzi o mapę string-string (nie o żadną kontrolkę). O tym jest mowa i przedstawiam najlepsze rozwiązanie takiej mapy. Nie muszę dublować żadnego stringa, raz jeszcze pleciesz bzdury o budowie ansistringów (aka string w Delphi).
Nie wspominając już o tym że w listbox'ie może być "a"->"b", "a"->"c", "a"->"b" zaś w proponowanej mapie nie może być.
A to czemu nie może być? Możesz mnie oświecić? Czy to ja mam ciebie oświecić o twojej niewiedzy?
to oczywiście czytałeś pytanie ("Czy można w Delphi wpisać do listboxa lub checkboxa 2 wartości") i oczywiście to jest twoja odpowiedź...
Ale ten temat dotyczy czegoś innego.
Zgoda, chodziło mi o rozwiązanie ogólne. Tylko tu pojawia się inne pytanie: Po co używać ListBoxa (który z założenia jest listą) do robienia mapy? Generalnie to jestem za trzymaniem danych w wewnętrznej strukturze i filtrowanie danych do kontrolek. Ale jeżeli ktoś chce pisać prosty system w którym coś chce się dopisać do stringa coś to normalni programiści robią właśnie podejście z klasą. Tylko teraz pytanie, czemu mówicie o milionach elementów, tak jakby temat dotyczył takich właśnie wielkości? Skoro mówimy o prostym pytaniu jak dodać dodatkowe dane do TStringList to po prostu robimy klasę i po sprawie. Natomiast z niewiadomych mi powodów rozwijacie temat przechodząc i do budowy stringów i mówicie o wielkościach tysiące razy większych niż chodzi o to pytaczowi. Więc czy to ja nie potrafię zrozumieć pytania czy wy? Ja po prostu rozwijam wasze myśli, nie moim problemem jest wasza nadinterpretacja problemu. Ja tu tylko mówiłem o budowie ansistringów, TStringList i map, natomiast nie interesował mnie bądź co bądź podstawowy problem pytacza.
Nie ja muszę ogarnąć temat generyków tylko ty musisz ogarnąć jak te generyki się robi.
Ależ oczywiście, bo nigdy nie używałem/tworzyłem generyków.
W mapie para string -> string tworzy rekord w którym oprócz tych dwóch stringów w zależności od rozwiązania może być nawet kilka dodatkowych pól, bez tego nie da się stworzyć mapy.
Twórcy biblioteki fgl
czitowali, nie ma rekordu. To że w pamięci to wygląda jak rekord nie robi z tego rekordu. To jest po prostu lista w której jest ileś pointerów (2*rozmiar mapy) i gdzie tu problem? Ja tu rekordów nie widzę.