[Dune] Fragen

Robert Kloefkorn robertk at mathematik.uni-freiburg.de
Thu Nov 20 15:54:32 CET 2003


Oliver Sander wrote:
> Hallo Leute!
> Ich hätte hier ein paar Düne-Anfängerfragen.  Es wäre nett, wenn
> mir jemand kurz damit helfen könnte.
> 
> a)  Warum gibt es duneapps/tester/Array.cc ?  Spricht was dagegen,
>     die Datei rauszuschmeissen und stattdessen dune/common/array.hh
>     zu nehmen?
> b)  Warum tauchen codim, dim und und dimworld sowohl in LevelIterator
>     als auch in LevelIteratorDefault auf, obwohl doch LID von LI
>     erbt?
> 

Du hast in beiden Sachen recht.
Das steht glaube ich auch in den anderen Default Implementierungen drin.


Noch ein paar Bemerkungen zum gcc 3.3.2.
Also die gute Nachricht ist, er kann den Dune Code übersetzen.
Der "Nachteil" ist folgender.
Wenn man z.B. in einer template function folgenden Code stehen hat:

template <class GridType>
void foo ( GridType &grid)
{
   // richtig
   typedef typename GridType::Traits<0>::LevelIterator LevelIteratorType;

   // falsch (hier ohne typename)
   typedef GridType::Traits<0>::LevelIterator LevelIteratorType;

   // und weiter

   // richtig
   LevelIterator it = grid. template lbegin<0>(0);

   // falsch (hier ohne template )
   LevelIterator it = grid.lbegin<0>(0);

   ...
}

Der icc kann beides, der gcc aber nicht.
Also sollte man der Portierbarkeit halber darauf achten, die 
Schlüsselwörter 'typename' und 'template' zu verwenden.

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