🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #8855

Vraag over operator overloading

#8855
From: Christof Laeremans
Date: Fri, 07 Jun 2002 13:03
153 lines
4037 bytes
Hallo,

Ik ben hier een beetje aan het prullen met operator overloading. De normale
wiskundige bewerkingen die lukken wel in mijn voorbeeld, maar de =
(toekenning) die krijg ik maar niet zoals het moet.

Hierbij de code en kan er mij aub iemand zeggen wat er juist fout zit met
die = operator.

Alvast bedankt. 

Christof Laeremans


HEADER FILE

#ifndef __GETALLEN_H
#define __GETALLEN_H

class Getallen
{
    private:
        int _getal;
    
    public:
        Getallen();
        Getallen(int getal);
        int getGetal();
        Getallen operator+ (const Getallen &g) const;
        Getallen operator* (const Getallen &g) const;
        Getallen operator/ (const Getallen &g) const;
        Getallen operator- (const Getallen &g) const;
        Getallen operator= (const Getallen &g) const;
};

#endif


IMPLEMENTATIE HEADER FILE

#include <iostream.h>
#include "getallen.h"

Getallen::Getallen(int getal) //constructor met 1 argument om declaratie
Getal B(5) mogelijk te maken !
{
    _getal = getal;
}

Getallen::Getallen() //constructor zonder argumenten om declaratie Getal A
mogelijk te maken !
{
    _getal = 0;

}

int Getallen::getGetal()
{
    return _getal;
}

Getallen Getallen::operator+ (const Getallen & g) const
//Operator overloading
{
    Getallen som;
    
    som._getal = _getal + g._getal;
    
    return som;
}

Getallen Getallen::operator* (const Getallen & g) const
{
    Getallen produkt;
    
    produkt._getal = _getal * g._getal;
    
    return produkt;
    
}

Getallen Getallen::operator/ (const Getallen & g) const
{
    Getallen quotient;
    
    quotient._getal = _getal / g._getal;
    
    return quotient;
}

Getallen Getallen::operator- (const Getallen & g) const
{
    Getallen verschil;
    
    verschil._getal = _getal - g._getal;

    return verschil;

}

Getallen Getallen::operator= (const Getallen & g) const
{
    
    Getallen temp;
    
    temp._getal = g._getal;
    
    return temp;
}

PROGRAMMA

#include <iostream.h>
#include "getallen.h"

int main()
{
    Getallen A(5);
    Getallen B(10);
    Getallen C;    

    
    
    cout<<"Het ingelezen getal is: "<<A.getGetal()<<endl;
    cout<<"het ingelezen getal is: "<<B.getGetal()<<endl;
    
    cout<<endl;
    cout<<endl;
    
    C = A + B;
    cout<<"Het totaal is: "<<C.getGetal()<<endl;
    C = A * B;
    cout<<"Het produkt is: "<<C.getGetal()<<endl;
    C = A / B;
    cout<<"Het quoti�nt is: "<<C.getGetal()<<endl;
    C = A - B;
    cout<<"Het verschil is: "<<C.getGetal()<<endl;
    C = A;
    cout<<"In het object C zit nu de waarde: "<<C.getGetal()<<endl;
  
}

Uitvoer van het programma

Het ingelezen getal is: 5
het ingelezen getal is: 10


Het totaal is: 0
Het produkt is: 0
Het quoti�nt is: 0
Het verschil is: 0
In het object C zit nu de waarde: 0
Technical Details
Message-ID: <B9267BCD.622D%christof_laeremans@hotmail.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!peer.news.opaltelecom.net!newsfeed.wirehub.nl!bnewspeer00.bru.ops.eu.uu.net!emea.uu.net!oleane.net!oleane!easynet-quince!easynet.net!feed1.news.be.easynet.net!news.be.wanadoo.com!news.wanadoo.be!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,ea2d507e20e1aa17,start
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-06-07 06:03:58 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!peer.news.opaltelecom.net!newsfeed.wirehub.nl!bnewspeer00.bru.ops.eu.uu.net!emea.uu.net!oleane.net!oleane!easynet-quince!easynet.net!feed1.news.be.easynet.net!news.be.wanadoo.com!news.wanadoo.be!not-for-mail
From: Christof Laeremans <christof_laeremans@hotmail.com>
Newsgroups: be.comp.programming
Subject: Vraag over operator overloading
Date: Fri, 07 Jun 2002 15:03:41 +0200
Organization: Wanadoo Belgium
Lines: 154
Message-ID: <B9267BCD.622D%christof_laeremans@hotmail.com>
NNTP-Posting-Host: adsl-143-253.wanadoo.be
Mime-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: sinclair.be.wanadoo.com 1023455037 1549197 213.177.143.253 (7 Jun 2002 13:03:57 GMT)
X-Complaints-To: abuse@wanadoo.be
NNTP-Posting-Date: Fri, 7 Jun 2002 13:03:57 +0000 (UTC)
User-Agent: Microsoft-Entourage/10.0.0.1309