Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: [C++] Tutorial für mit Zeiger vs. Referenzen, Operatorüb

  Alt 12. Sep 2005, 22:12
Zitat von tommie-lie:
Zitat von Chewie:
Code:
Matrix* m = new Matrix(3);
m(0,1) := 56.45;
Ne, iss klar, mit ":=" kann das auch nicht gehen
Code:
Matrix* m = new Matrix(3);
(*m)(0,1) = 56.45;
geht immer noch nicht?
Hehe Ups.
Die (*m)(0,1) - Variante geht, ist aber hässlich. Naja, aber ist akzeptabel im Notfall.

Zitat von Chewie:
Und warum ist so eine statische Methode schlechter Stil?
Nicht statische Methoden sind schlechter Stil. Schlechter Stil ist, Referenzen auf Dinge zurückzugeben, der der Caller freigeben muss, er aber aufgrund des Interfaces nicht darauf schließen kann, daß er das muss, ergo Referenzen auf dynamisch erzeugte Objekte. Gibst du einen Pointer zurück, ist klar, daß das Objekt wieder freigegeben werden muss. Eine Referenz auf den Rückgabewert macht allenfalls bei einigen Patterns Sinn[/quote]

Ack. Ich hatte dich so verstanden, dass es generell schlechter Stil sei, dass eine statische Methode Objekte zurückliefert, sei es als referenz, als Zeiger oder als was-auch-immer.

Naja, so wies aussieht, werd ich mich damit abfinden, den Zeiger manuell zu derefenzieren.
Danke aber für die Literatur und die Vektor-Klasse, Olli.

Operatoren, die ich überladen möchte, sind halt dieser Subscript-Operator und Operatoren zum Multiplizieren. Ob ich sonst noch was brauch, weiß ich noch nicht.

Aber auf jeden Fall großen Dank schon mal.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat