🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Ueberladen ... Problem ... Dringend

#1186
From: Marco Budde
Date: Mon, 08 Jan 1996 10:35
68 lines
2430 bytes
From: Marco_Budde@p15.f5200.n240.z2.fido.sub.org (Marco Budde)
Newsgroups: fido.ger.c_plusplus
Subject: Problem beim Ueberladen!
Date: Thu, 04 Jan 1996 21:41:00 +0200
Organization: Grundgesetz fuer Windows
Message-ID: <MSGID_2=3A240=2F5200.15_c0199c7a@fidonet.org>

Moin Moin!

Ich habe da ein ziemlich grosses Problem. Mein Informatikprof. hatte  
irgendwie das Verlangen, uns in einer Vorlesungsstunde die komplette C++  
Programmierung zu zeigen ;-)! Jetzt sollen wir ein Programm abliefern,  
dass massenhaft Operatoren ueberlaedt. Leider bekomme ich das absolut  
nicht hin. Ich habe hier zwar ein C++ Buch von Schumann liegen, aber  
irgendwie scheint der Autor selbst keinerlei Ahnung von C++ zu haben. Ich  
hoffe mir kann hier jemand das Uberladen mal genauer erklaeren. Was mir  
absolut nicht klar ist: muss ich fuer die Rueckgabe erst eine Kopie das  
Objekts erzeugen oder wie greife ich auf dieses Objekt zu?
Dieses Codefragment ist gegeben:

class vektor
{
  int *pointer;
  int dimension;
  public:
    vektor (int anzahl_elemente);
    ~vektor ();
    vektor (vektor &u);
    vektor &operator= (const vektor &v);
    int &operator[] (int i);
    vektor operator+ (const vektor &u);
    int operator* (const vektor &u);
};

vektor::vektor (int anzahl_elemente)
{
  dimension = anzahl_elemente;
  pointer = new int[anzahl_elemente];
  if (pointer == NULL)
  {
    cout << "Allokationsfehler" << endl;
    exit (EXIT_FAILURE);
  }
}

Nun sollen die restlichen Funktionen realisiert werden (insbesondere den  
Destruktor, die Vektoraddition und die Skalarmultiplikation). Den  
Desktruktor habe ich ja noch hinbekommen, aber der Rest ...

vektor::~vektor (void)
{
  delete pointer;
}

vektor& vektor::operator = (const vektor &v)
{
  int i;

  for (i=0 ; i < v.dimension ; i++)
    pointer[i] = v.pointer[i];
  return (*this);
}

Ich hoffe wirklich, dass ihr mir helfen koennt.

cu, Marco

Mailbox: mbudde@hqsys.shnet.org    Uni: Budde@tu-harburg.d400.de
Technical Details
Message-ID: <4cqs22$2ou@rztsun.tu-harburg.de>
Path: arc1-ca.pugleaf.net!hp00.rz.tu-harburg.de!semb2204

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!hp00.rz.tu-harburg.de!semb2204
From: semb2204@hp00.rz.tu-harburg.de (Marco Budde)
Newsgroups: de.comp.lang.c++
Subject: Ueberladen ... Problem ... Dringend
Date: 8 Jan 1996 10:35:46 GMT
Organization: Techn. Uni. Hamburg-Harburg, Germany
Sender: semb2204@hp10.rz.tu-harburg.de (Marco Budde)
Message-ID: <4cqs22$2ou@rztsun.tu-harburg.de>
NNTP-Posting-Host: hp10.rz.tu-harburg.de