Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Templates

  1. #1
    Gast

    Question Templates

    Hi!!!
    ne kleine (dumme Frage). ich hab da z.B. ne Template-Klasse, wie z.b.:

    template <class T>
    class Vector
    {
    private:
    int msize;
    ...
    public:
    Vector (int size)
    {
    msize = size;
    };
    int getSize()
    {
    return msize;
    };
    ...
    };

    soweit alles in ordnung. natürlich gehört da noch mehr hin, aber nur mal als beispiel. das klappt auch beim compilieren. aber ich hab's mir angewöhnt die inneren Funktionen außerhalb der Klasse zu deklarieren. also z.B: Vector::Vector (int size)
    {
    msize = size
    };
    und in der Klasse dann eben nur den Kopf stehen lassen. allerdings klappt das, sobald ich das mit ner Template klasse mache nichtmehr. muß ich die Funktionen nochmal irgendwie kennzeichnen???? sorry, hab aber noch nicht allzuviel mit templateklassen gearbeiten. hoffe mir kann jemand helfen
    bis denne...

    cu
    Peter

  2. #2
    docdooley
    Gast

    Post

    Hi,

    erstmal gibt es schonmal keine dummen Fragen .. aber lassen wir das lieber .. ja die Signatur der Funktion sieht etwas anders aus ...
    Deine Funktion sollte so aussehen:

    template< class C > Vector< C >::Vector ( int size)
    {
    }
    Und zu Deiner Klassendeklaration eine Templateklasse besitzt immer einen Parameter, sonst hätte das ja keinen Sinn, ich habe hier C als Parameter gewählt .. also die Klasse sollte so aussehen:
    template< class C >
    class Vector
    {
    };

    docdooley



    [Diese Nachricht wurde von docdooley am 02. Mai 2000 editiert.]

  3. #3
    Gast

    Smile

    Hi!!!
    danke!! jetzt funtzts . das mit der deklaration hatt ich allerdings richtig, bin ja nicht ganz dumm . entweder hab ich das mit dem parameter hinter template beim tippen hier vergessen, oder aber (das ist ja oft so), das ganze ist einfach vom Forum verschluckt worden und wurde falsch interpretiert, da ich in dem moment wohl nicht daran gedacht habe .
    auf jeden fall nochmal danke!!!!!!

    cu
    Peter

    [Diese Nachricht wurde von KronOS am 02. Mai 2000 editiert.]

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •