Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Problem mit template...

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
14.05.2004, 15:09 Uhr
~andreasK
Gast


Hier erst mal der Code:


C++:
//include datei für binärbaum
#include <stdlib.h>
#include <iostream.h>



template <class T>
class CBinTree {

private:
    typedef struct _Tree {T* value;
                         int level;
                         struct tree *daddy;
                         struct tree *right;
                         struct tree *left;} Tree;

    
    int wert;

public:
    CBinTree();
    ~CBinTree();
    Tree* add(Tree *tree, T val);
    void del(int val);
    

};

////////////////////////
//
//********************************************************************************
//
//Konstruktor/Destruktor
template <class T>
CBinTree<T>::CBinTree()
{

}

template <class T>
CBinTree<T>::~CBinTree()
{

}



///////////////////////////////////////////////////////////////////
//Funktion die das hinzufuegen eines wertes in den baum erlaubt
///////////////////////////////////////////////////////////////////
template <class T>
Tree* CBinTree<T>::add(Tree *tree, T val)
{
    

    return tree;
}


template <class T>
void CBinTree<T>::del()
{

}




Wenn ich das Ding jetzt auf den Compiler zulasse bekomm ich immer folgende Fehlermeldungen:

c:\konzepte\binbaum-kl\bin.h(52) : error C2143: Syntaxfehler : Fehlendes ';' vor '*'
c:\konzepte\binbaum-kl\bin.h(52) : error C2501: 'Tree' : Fehlende Speicherklasse oder Typbezeichner
c:\konzepte\binbaum-kl\bin.h(52) : error C2059: Syntaxfehler : ';'
c:\konzepte\binbaum-kl\bin.h(52) : error C2065: 'T' : nichtdeklarierter Bezeichner
c:\konzepte\binbaum-kl\bin.h(52) : error C2061: Syntaxfehler : Bezeichner 'T'
c:\konzepte\binbaum-kl\bin.h(60) : error C2954: Vorlagendefinitionen koennen nicht verschachtelt werden
c:\konzepte\binbaum-kl\bin.h(64) : error C2244: 'CBinTree<T>::del' : Funktionsueberladung kann nicht aufgeloest werden

Worin liegt der Fehler bei dieser Zeile:


C++:
template <class T>
Tree* CBinTree<T>::add(Tree *tree, T val)




Danke!

Dieser Post wurde am 14.05.2004 um 21:18 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.05.2004, 15:27 Uhr
Tommix



Hallo,

C++:
template <class T>
CBinTree<T>::Tree* CBinTree<T>::add(Tree *tree, T val)
{
    

    return tree;
}


template <class T>
void CBinTree<T>::del(int val)
{

}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.05.2004, 15:28 Uhr
virtual
Sexiest Bit alive
(Operator)


Das <T> fehlt bei zwei "Tree"s,
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.05.2004, 15:35 Uhr
~andreasK
Gast


Danke funktioniert jetzt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.05.2004, 16:08 Uhr
0xdeadbeef
Gott
(Operator)



C++:
    typedef struct _Tree {T* value;
                         int level;
                         struct tree *daddy;
                         struct tree *right;
                         struct tree *left;} Tree;


dürfte auch nicht hinhauen, das sollte so aussehen:

C++:
    typedef struct _Tree {T* value;
                         int level;
                         struct _Tree *daddy;
                         struct _Tree *right;
                         struct _Tree *left;} Tree;


In C++ kannstes aber auch einfach machen und

C++:
    struct Tree {T* value;
                         int level;
                         Tree *daddy;
                         Tree *right;
                         Tree *left;};


schreiben.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: