[Dune] IntersectionIterator outside und inside.

Robert Kloefkorn robertk at mathematik.uni-freiburg.de
Tue Aug 23 10:51:31 CEST 2005


Hi Christian und alle Duneler,

> Eine Referenz darfst Du nicht weiter verwenden, das bedeutet
> insbesondere, dass Du Entities, die Du über die Intersection
> identifizierst nicht zum verfeinern makieren kannst. Willst Du das
> wirklich?

Das liegt wohl daran, dass ich mich immer noch nicht damit anfreunden
kann, dass man der methode mark einen EntityPointer mitgibt. Wir haben
die Sache hier nochmal durchdiskutiert. Der einzige Grund weshalb man
überhaupt einen EntityPointer benötigt, ist, dass der Copy Constructor
der Entity verboten ist, damit nicht ausversehen jemand irgendwo ein &
vergisst und dann Entities kopiert werden. Das macht Sinn ist aber
zugleich auch der Einzige Grund. Zweitens ist nicht einzusehen, wieso
man der Methode mark einen EntityPointer übergeben soll. Wenn innerhalb
dieser methode wirklich Entities speichern wollte (und wer will das
schon, weil es nicht die Bohne Sinn macht, eventuelle maps können mit
Hilfe der id's angelegt werden), kann er das ja trotzdem tun, da man mit
einer Entity immer einen EntityPointer anlegen können sollte (falls das
nocht nicht geht, bin ich dafür die Funktionalität einzuführen).
Ausserdem ist die EntityPointer Anlegerei nicht ganz billig und der
IntersectionIterator ist ein kritischer Punkt für solche Geschichtchen.
Deshalb bin ich (und Adrian übrigens auch) dafür, dass der
IntersectionIterator Entity Referenzen liefert und diese eben vom User
in EntityPointer umgewandelt, wenn er es denn möchte. Ausserdem ist es
total verwirrend in dem ohnehin schon für Neulinge schwer zu
druchschauendem Code, wenn alle Iteratoren Entities nur der
IntersectionIterator EntityPointer liefert.

Deshalb also meine obige Anfrage. Also nochmal kurz zusammengefasst:
Wir brauchen EntityPointer zum speichern von Entities (was eher selten
vorkommt). Entity sollten aber die Haupt "Element" Klasse bleiben und
deshalb auch von allen Iteratoren geliefert werden.


Grüße aus FR

Robert

-- 

  Robert Klöfkorn           <robertk at mathematik.uni-freiburg.de>

  Mathematisches Institut              Tel: +49 (0) 761 203 5631
  Abt. für Angewandte Mathematik       Fax: +49 (0) 761 203 5632
  Universität Freiburg
  Hermann-Herder-Str. 10
  79104 Freiburg

  http://www.mathematik.uni-freiburg.de/IAM/homepages/robertk




More information about the Dune mailing list