🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1658

Re: Q: operatoren ueberladen -> wer loescht evtl. neue Instanzen????

#1658
From: Andreas Zierdt
Date: Wed, 14 Feb 1996 17:06
47 lines
1972 bytes
Dirk Brenckmann (brenck@iib.bauwesen.th-darmstadt.de) wrote:

: Im Ernst. Speziell beim Ueberladen von + und - operatoren in Klassen
: ergibt sich das Problem, dass ich innerhalb der Methoden neue Instanzen
: schaffen muss, um die per return wieder zuruck zu geben.

Das folgende Beispiel sollte zeigen, wie es geht:

/* Der Operator = ermöglicht Zuweisungen von Vektoren.*/

template<class T> Vector<T>& Vector<T>::operator=(const Vector& v)
{
        unsigned int    i;
        
        if (this == &v)
           return( *this);        

        for (i=0; i<dim; i++)
           data[i] = v.data[i];

          return (*this);
}

/* Die Operatoren + und - erlauben Vektoraddition und -subtraktion. */          

template<class T> Vector<T> Vector<T>::operator+(const Vector& v) const
{
         unsigned int    i;
         Vector result(dim);
          
          for (i=0; i<dim; i++)
                  result.data[i] = data[i] + v.data[i];
                  
          return(result);
}          

Berechnet man jetzt a = b + c, so umfaßt die Lebensdauer des neuen, von
+() erzeugten Objekts, die Zeit, während der der operator=() aktiv ist.

Andreas

--
Andreas Zierdt,    Institut fuer Phonetik und sprachliche Kommunikation
                   Universitaet Muenchen, Schellingstr. 3
                   80799 Muenchen, Germany

E-mail: andi@sun1.phonetik.uni-muenchen.de                   
Technical Details
Message-ID: <4ft4ri$ne@sparcserver.lrz-muenchen.de>
Path: arc1-ca.pugleaf.net!linux8.phonetik.uni-muenchen.de!andi
References: <4fspll$j05@rs18.hrz.th-darmstadt.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!linux8.phonetik.uni-muenchen.de!andi
From: andi@linux8.phonetik.uni-muenchen.de (Andreas Zierdt)
Newsgroups: de.comp.lang.c++
Subject: Re: Q: operatoren ueberladen -> wer loescht evtl. neue Instanzen????
Date: 14 Feb 1996 17:06:58 GMT
Organization: Phonetik
Distribution: world
Message-ID: <4ft4ri$ne@sparcserver.lrz-muenchen.de>
References: <4fspll$j05@rs18.hrz.th-darmstadt.de>
Reply-To: andi@sun1.phonetik.uni-muenchen
NNTP-Posting-Host: linux8.phonetik.uni-muenchen.de
X-Newsreader: TIN [version 1.2 PL2]