Aktywne Wpisy
DoktorMorela +152
Eksperci:poród drogami natury jest lepszy
Badania:poród drogami natury niesie mniejsze ryzyko i powikłan niz cesarskie cięcie
Konsensus:cięcie cesarskie jest zabiegiem ratunkowym
Tymczasem polki: zesransko
Ja wiem lepiej,cesarka na zyczenie, a bo koleżance matki siostry wypadł płuco przez odbyt.
Badania:poród drogami natury niesie mniejsze ryzyko i powikłan niz cesarskie cięcie
Konsensus:cięcie cesarskie jest zabiegiem ratunkowym
Tymczasem polki: zesransko
Ja wiem lepiej,cesarka na zyczenie, a bo koleżance matki siostry wypadł płuco przez odbyt.
źródło: Screenshot_20260527_072033_Samsung Internet
Pobierz
Rambo8_w_TV +67
Treść przeznaczona dla osób powyżej 18 roku życia...





mam takiego potwora:
union ptr
{
record* rec;
char* raw;
};
ptr* bufferdata;
bufferdata jest tworzony tak
this->bufferdata = new ptr[BUFFERSIZE*size];
i teraz chce by mi ta tablica rekordów została posortowana przy pomocy std:qsort
jak mam tego qsorta zawołać bo nie jestem pewien czy
std::qsort(buffer_data, size*BUFFERSIZE, 4,bufferdata->rec->operator<=);
to poprawna metoda
std::vector?http://en.cppreference.com/w/cpp/algorithm/qsort
bo z definicji buffor jest statyczy i jakoś tak mi łatwiej nad nim zapanować
ogólnie to chyba chciałem zapytać
JAK NA SZYBKOŚCI POSORTOWAĆ CZORTA.
fajnie jak nie będzie to mocno od Cstyle odbiegało
ogolnie to ładuje surowe dane z dysku (dlatego jest ten union)
robię na tym magię i zwracam na dysk
W nowoczesnym C++ możesz władować tam lambdę. W "C" style będziesz musiał zdefiniować funkcję i jej nazwę wpakować jako argument.
Krótko mówiąc - wszystko jest w dokumentacji :D Mogłeś jedynie tutaj nie znać pojęcia "wskaźnik na funkcję".
ale ta ścieżka do tej metody jakaś taka dzika mi się wydaje
qsortjest duƶo gorszy odstd::sort, bo uniemoƶliwia optymalizację.W kaƶdym razie:
qsortwymaga funkcji zwracającej trzy stany (mniejsze, równe, większe),std::sortpotrzebuje lessthan gwarantującego strict weak ordering. Czyli normalny<dla intów.std::sort(buffer_data, buffer_data+BUFFER_SIZE, cmp)i gotowestd::qsort to w sumie funkcja z języka "C", a C++ trzyma kompatybilność i masz odpowiednie biblioteki: cstdlib w C++ to wrapper na stdlib.h
Jeżeli chcesz używać tego std::qsort, to dokumentacja w "C" ci pomoże bardziej.
http://en.cppreference.com/w/c/algorithm/qsort
@patrolez: to może tłumaczyć czemu VS podpowiedziało mi qsorta a nie sort
Może wcześniej jest jakiś std::qsort był użyty w projekcie?
Może miałeś już wcześniej include na cstdlib i ci podpowiedział tylko co miałeś "władowane" w kontekst?
Nie używam VS jako IDE do C++ i nie wiem jak to podpowiadanie tam śmiga. Podejrzewam wersję numer 3.
Deklaracja std::sort jest w innym nagłówku.
#include, to pewnie będziesz miał i std::sort.http://en.cppreference.com/w/cpp/algorithm/sort
Ja tych nagłówków nie biorę z sufitu, tylko z dokumentacji, która ma wyszukiwarkę :P
Komentarz usunięty przez autora