Article View: be.comp.programming
Article #17307Re: vectors,strings en klassen in c++
From: Wim Dumon
Date: Tue, 11 Jan 2000 00:00
Date: Tue, 11 Jan 2000 00:00
86 lines
2470 bytes
2470 bytes
Steven Wuyts wrote:
>
> Hallo,
>
> een vraagje voor de c++ers onder jullie :
>
My personal little guess onder een 'it works for me' disclaimer:
#include<algorithm>
#include<string>
#include<vector>
#include<iostream>
#include<fstream>
class film
{
public:
film(string Titel, int UitgifteJaar, double Ranking):
Titel(Titel), UitgifteJaar(UitgifteJaar), Ranking(Ranking) {}
int Jaar() const { return UitgifteJaar; }
private:
string Titel;
int UitgifteJaar;
double Ranking;
};
struct cmp_film
{
bool operator()(const film *f1, const film *f2) const
{ return f1->Jaar() < f2->Jaar(); }
};
int main()
{
film f1("terminator 1", 1992, 0.1);
film f2("terminator 2", 1995, 0.2);
film f3("terminator 3", 1996, 0.3);
film f4("terminator 4", 1997, 0.4);
film f5("terminator 5", 1998, 0.5);
vector<film *> mdb;
mdb.push_back(&f2); mdb.push_back(&f4); mdb.push_back(&f1);
mdb.push_back(&f3); mdb.push_back(&f5);
cout << "max is "
<< (*max_element(mdb.begin(), mdb.end(), cmp_film()))->Jaar()
<< endl;
cout << "min is "
<< (*min_element(mdb.begin(), mdb.end(), cmp_film()))->Jaar()
<< endl;
cout << "unsorted" << endl;
for(vector<film *>::const_iterator i = mdb.begin();
i != mdb.end(); ++i)
cout << (*i)->Jaar() << endl;
sort(mdb.begin(), mdb.end(), cmp_film());
cout << "sorted" << endl;
for(vector<film *>::const_iterator i = mdb.begin();
i != mdb.end(); ++i)
cout << (*i)->Jaar() << endl;
return 0;
}
output:
max is 1998
min is 1992
unsorted
1995
1997
1992
1996
1998
sorted
1992
1995
1996
1997
1998
compiler is gcc 2.95
Welcome to the STL,
Wim.
Technical Details
Message-ID:
<387B405E.83933CE@easics.be>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<AQ_d4.2224$SC2.20178@afrodite.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,300fe2dc8427b390 X-Google-Attributes: gidfcea4,public From: Wim Dumon <wim@easics.be> Subject: Re: vectors,strings en klassen in c++ Date: 2000/01/11 Message-ID: <387B405E.83933CE@easics.be> X-Deja-AN: 571193475 Content-Transfer-Encoding: 7bit References: <AQ_d4.2224$SC2.20178@afrodite.telenet-ops.be> X-Accept-Language: en Content-Type: text/plain; charset=us-ascii X-Complaints-To: helpdesk@kpnqwest.net X-Trace: nreader3.kpnqwest.net 947601524 193.74.198.7 (Tue, 11 Jan 2000 15:38:44 MET) Organization: Easics nv, Leuven, Belgium, http://www.easics.com MIME-Version: 1.0 NNTP-Posting-Date: Tue, 11 Jan 2000 15:38:44 MET Newsgroups: be.comp.programming