[Dune] Vorschlag.
Robert Kloefkorn
robertk at mathematik.uni-freiburg.de
Thu Oct 30 16:29:55 CET 2003
Servus,
ich hätte einen Vorschlag bezüglich Typ Definition innerhalb von Klassen
zum Gebrauch ausserhalb zu machen.
Das Problem ist folgendes:
Bei machen Klassen muss man sich (ok das ist eine Möglichkeit) mittels
typedef die Typen der von Methoden dieser Klasse zurückgelieferten
Objekte merken.
z.B.:
die Methode lbegin von grid liefert einen LevelIterator, edssen Typ man
mit
Grid::Traits<codim>::LevelIterator
abfragen kann.
Damit dieses merken von Typen etwas einheitlich wird schlage ich
folgende Konvention vor:
1.) Typdefinitionen sollen immer am Anfang der Klassendefinitionen
stehen und enden mit 'Type' oder 'type'. z.B. GridType
2.) Falls diese Typedefinitionen nur innerhalb einer verschachtelten
Klasse möglich sind, siehe z.B. LevelIterator in Grid benötigt noch
einen extra Parameter codim, dann werden diese Definitionen innerhalb
eines Structs 'Traits' vorgenommen, der dann mit dem entsprechenden
template parameter versehen wird.
3.) Wichtig ist noch, dass diese Typdefinitionen nur in den Interface
Klassen vorgenommen werden, damit sichergestellt ist, das jede
abgeleitete Klasse automatisch diese Typdefinitionen enthält.
Was haltet ihr davon und gibt es Einwände wegen Dingen die ich noch
übersehen habe.
Grüsse
Robert
--
Robert Klöfkorn <robertk at mathematik.uni-freiburg.de>
Mathematisches Institut Tel: +49 (0) 761 203 5642
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