Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Problem mit Templates

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
19.05.2005, 08:22 Uhr
~Computer_Padawan
Gast


Möge die Macht mit euch sein .. ;-)

Ich habe ein kleines Problem mit dem Folgenden Programmcode:


C++:
#ifdef _DEBUG
    #define new DEBUG_NEW
#endif

CList <CPoint,CPoint> PointList;



Dies ist der Beginn einer header-Datei, die ich in einem mit dem Assistenten von V-Studio .NET für eine MDI-MFC Anwendung erstellt habe.

Die Programm heißt Lara, die Header Datei heißt FNM-lara_datenspeicher.h und ist (in der Lara.cpp wie folgt eingefügt:


C++:
// Lara.cpp : Definiert das Klassenverhalten für die Anwendung.
//

#include "stdafx.h"
#include "Lara.h"
#include "MainFrm.h"

#include "ChildFrm.h"
#include "LaraDoc.h"
#include "LaraView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

#include "FNM-lara_datenspeicher.h"

// CLaraApp



Beim kompilieren erhalte ich die Fehlermeldung:

Code:
error C2143: Syntaxfehler: Es fehlt ';' vor '<'


mit Verweis auf Zeile 5 (
Code:
CList <CPoint,CPoint> PointList;
)der header-Datei.

Ich muss zugebene, dass meine Ratlosigkeit (auch nach Studium von MSDN und GOOGLE) nur noch von meinem Mangel an Erfahrung mit Templates übertroffen wird. Kann mir jemand weiterhelfen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.05.2005, 09:29 Uhr
GuenniAtWork



Hi,

Dir fehlt noch ein Header in deinem Header


C++:
#include "afxtempl.h"



Gruß GuenniAtWork
--
Gruß GuenniAtWork

Dieser Post wurde am 19.05.2005 um 09:30 Uhr von GuenniAtWork editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.11.2005, 09:56 Uhr
~eem
Gast


hallo ich habe folgende headerdatei:

Code:

#ifndef Class5_HPP_
#define Class5_HPP_

/* PROTECTED REGION ID(:Package1:Class5::Class5_Interf_Deps) START */
// TODO
/* PROTECTED REGION END */

namespace Package1
{

template <class T>
class Class5
{
  /*[ class Class5

  ]*/

public: //-----------------------------------------------------------------

  // default constructor
  Class5 ();

  // destructor
  ~Class5 ();

  T Operation1 (T x, T y);

  int Operation2 ();

protected: //--------------------------------------------------------------

private: //----------------------------------------------------------------

  // copy constructor
  Class5 (const Class5& rhs);

  // copy assignment operator
  Class5& operator= (const Class5& rhs);

                                            // data ------------------------
};

}  /* namespace Package1 */

#endif  /* Class5_HPP_ */




folgende c++-datei:



Code:

/* class Class5

*/

#include "Class5.hpp"
#include <iostream>

template <class T>
T Class5<T>::Operation1(T x,T y)
{
/* PROTECTED REGION ID(:Package1:Class5::Operation1_Impl) START */
    T ret;
    // TODO
    return ret;
/* PROTECTED REGION END */
}

template <class T, class S>
int Class5<T,S>::Operation2()
{
/* PROTECTED REGION ID(:Package1:Class5::Operation2_Impl) START */
    int ret;
    // TODO
    return ret;
/* PROTECTED REGION END */
}



und folgenden fehler:
../Class5.cpp:9: error: expected init-declarator before '<' token
../Class5.cpp:9: error: expected `;' before '<' token
../Class5.cpp:19: error: expected init-declarator before '<' token
../Class5.cpp:19: error: expected `;' before '<' token


kannmir wer helfen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.11.2005, 11:28 Uhr
ao

(Operator)


Nachdem Class5 im Namensraum Package1 lebt, würde ich mal (blind hingetippt) folgendes vorschlagen:

C++:
template <class T>
T Package1::Class5<T>::Operation1(T x,T y)


und in Zeile 19 entsprechend.

BTW: Hast du schon mal über selbsterklärende Bezeichner nachgedacht? Package1, Class5, Operation1 sind nicht gerade Musterbeispiele hierfür.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


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: