Article View: be.comp.programming
Article #14912Re: c++ i/o vraagje
From: Bart Van den Bossche
Date: Mon, 01 Jan 2001 19:29
Date: Mon, 01 Jan 2001 19:29
31 lines
2021 bytes
2021 bytes
On Mon, 1 Jan 2001, Kristof Verhenne wrote:
> Is het mogelijk om aan de << operator 2 verschillende betekenissen te
> geven in een bepaalde klasse. Ik wil namelijk de fstream anders opslaan
> dan de output naar scherm.
> Nu heb ik volgende functies:
>
> friend ostream& operator<<(args)
> friend ofstream& operator<<(args)
>
> als ik nu een file heb
> ofstream fs("file",ios::app);
> fs << i;
>
> Dan roept hij de bovenste operator aan voor het object i, terwijl ik de
> onderste wil, hoe komt dit, hoe kan ik dat oplossen?
class Test {
...
friend ostream& operator<<(ostream&, Test&);
friend ofstream& operator<<(ofstream&, Test&);
};
ofstream& operator<<(ofstream &o, Test &t) { ... }
ostream& operator<<(ostream &o, Test &t) { ... }
Zo werkt het bij mij toch. Voor (operator) overloading is het belangrijk
dat uw argumenten verschillen, de compiler kijkt niet naar het return
type.
Bart
Technical Details
Message-ID:
<Pine.LNX.4.21.0101012019100.5388-100000@backslash.moeha.net>Path:
arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!look.ca!newsfeed.icl.net!colt.net!newsfeeds.belnet.be!news.belnet.be!feed1.news.be.easynet.net!news.be.easynet.net!213-193-182-146.adsl.easynet.be!bartReferences:
<3A50C921.4ED767D0@rug.ac.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,72cd05f034fe4ac7 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2001-01-01 11:37:23 PST Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!look.ca!newsfeed.icl.net!colt.net!newsfeeds.belnet.be!news.belnet.be!feed1.news.be.easynet.net!news.be.easynet.net!213-193-182-146.adsl.easynet.be!bart From: Bart Van den Bossche <bartvdb@easynet.be> Newsgroups: be.comp.programming Subject: Re: c++ i/o vraagje Date: Mon, 1 Jan 2001 20:29:32 +0100 Organization: [ posted via Easynet Belgium ] Lines: 33 Message-ID: <Pine.LNX.4.21.0101012019100.5388-100000@backslash.moeha.net> References: <3A50C921.4ED767D0@rug.ac.be> NNTP-Posting-Host: 213-193-182-146.adsl.easynet.be Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: rivage.news.be.easynet.net 978377840 47337 213.193.182.146 (1 Jan 2001 19:37:20 GMT) X-Complaints-To: abuse@easynet.be NNTP-Posting-Date: 1 Jan 2001 19:37:20 GMT X-Sender: bart@backslash.moeha.net In-Reply-To: <3A50C921.4ED767D0@rug.ac.be>