Article View: pl.comp.lang.c
Article #298001Re: sortowanie vector<Klasa*>
From: bartek szurgot
Date: Wed, 17 Aug 2011 13:10
Date: Wed, 17 Aug 2011 13:10
40 lines
1756 bytes
1756 bytes
On 08/17/2011 02:58 PM, B wrote:
> Witam,
> Mam (chyba) banalny problem ale nie mogę znaleźć rozwiazania. Otóż
> mam taki oto kod:
>
> class Klasa {
> private:
> int a;
> };
>
> void f(){
> vector<Klasa*> w;
> // tu wypełnienie wektora
>
> sort(w.begin(),w.end()); //dlaczego tu się nie wywala?
>
> }
>
> i pytanie jak w kodzie tj. dlaczego mimo braku operatora < program
> podczas uruchomienia się nie wywala?
>
> Jak dopisze do klasy:
> bool operator<(Klasa& k) const {
> cout<<"aaaa"<<endl;
> return k.a < this->a;
> }
>
> to ten operator nie jest wywoływany?
>
> B.
mając vector<Klasa*> sortujesz po adresach a nie wartościach. powinieneś
napisać funktor do porównania i dać go sort'owi jako parametr. poczytaj:
http://www.sgi.com/tech/stl/sort.html
--
pozdrawiam serdecznie / best regards,
Bartek 'BaSz' Szurgot
http://www.baszerr.org
Technical Details
Message-ID:
<j2gekh$156$1@z-news.wcss.wroc.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!pwr.wroc.pl!news.wcss.wroc.pl!not-for-mailReferences:
<j2gdud$2jk$1@news.onet.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!pwr.wroc.pl!news.wcss.wroc.pl!not-for-mail From: bartek szurgot <no.sp@m.plz> Newsgroups: pl.comp.lang.c Subject: Re: sortowanie vector<Klasa*> Date: Wed, 17 Aug 2011 15:10:41 +0200 Organization: Politechnika Wroclawska Lines: 40 Message-ID: <j2gekh$156$1@z-news.wcss.wroc.pl> References: <j2gdud$2jk$1@news.onet.pl> NNTP-Posting-Host: venus.wcss.wroc.pl Mime-Version: 1.0 X-Trace: z-news.wcss.wroc.pl 1313586641 1190 156.17.248.89 (17 Aug 2011 13:10:41 GMT) X-Complaints-To: abuse@news.pwr.wroc.pl NNTP-Posting-Date: Wed, 17 Aug 2011 13:10:41 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110626 Icedove/3.1.11 In-Reply-To: <j2gdud$2jk$1@news.onet.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit