JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=ec53a9558d5a86e6181bc0d6ccbc4283Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Template - type 'xy' unexspected

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 30.12.2004, 19:02    Titel: Template - type 'xy' unexspected Antworten mit Zitat

Hi @all,
hier ist erstmal der Code
Code:
class text_reader
   {
      public:
         text_reader(){}
         text_reader(const std::string& path){
            file_.open(path.c_str(), std::ios::in);
         }

         void open(const std::string& path){
            file_.open(path.c_str(), std::ios::in);
         }

         void read(){
            char buffer_id[256];
            char buffer_data[256];

            while(!file_.eof()){            
               file_.getline(buffer_id, 256, ':');
               file_.ignore(1);
               file_.getline(buffer_data, 256);
               
               data_[buffer_id] = buffer_data;
            }
         }


         template<typename T>
            __forceinline T getData(const std::string& id){
               return lexical_cast<T>(data_[id].c_str());
            }   
         

      private:
         std::ifstream                  file_;
         std::map<std::string, std::string> data_;
   };


Der lexical_cast ist nichts weiter als:
Code:
template<typename A, typename T> inline const A lexical_cast(const T& source){
    std::stringstream s;
    A destination;

    if(!(s << source) || !(s >> destination) || !(s >> std::ws).eof())
        throw "bad lexical cast";

    return (destination);
}


Diese Klasse sollte eine einfache Möglichkeit darstellen, mal eben schnell und unkompliziert ein paar Daten aus einer Textdatei laden zu können...

Mein Problem besteht nun in dem getData<>() Aufruf, egal welchen Datentyp ich angebe, der Compiler spuckt immer folgenden Fehler:
Code:
error C2062: type 'xy' unexpected


Aus dem MSDN-Eintrag bin ich leider nicht wirklich schlau geworden... Confused
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
xardias
JLI Master


Alter: 38
Anmeldedatum: 28.12.2003
Beiträge: 804
Wohnort: Palo Alto, CA
Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 09:40    Titel: Antworten mit Zitat

müsstest du nicht um deine lexical_cast funktion zu verwenden beide template parameter angeben?
lexical_cast<T,char*>(data_[id].c_str());
wobei ich dann eigentlich gleich den String (oder Stringstream) direkt übergeben würde.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 10:00    Titel: Antworten mit Zitat

Nee... den Typ des übergebenen Parameters bekommt der Compiler doch afaik von selbst heraus...

Habs trotzdem nochmal fix ausprobiert, funktioniert auch nicht... =/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 12:06    Titel: Antworten mit Zitat

In welcher Zeile genau erhältst du denn den Fehler?
Und was steht dazu in der MSDN?
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 12:22    Titel: Antworten mit Zitat

xardias
Nee, bei meinem Lexical_cast ist das überflüssig, genau wie bei dem aus boost.

The Lord of Programming
In der MSDN gibt es sogut wie nichts über Templates

GreveN
Ich kümmere mich morgen abend mal drum, geht grad schlecht Arrow Freundin ist da
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
xardias
JLI Master


Alter: 38
Anmeldedatum: 28.12.2003
Beiträge: 804
Wohnort: Palo Alto, CA
Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 12:45    Titel: Antworten mit Zitat

Patrick hat Folgendes geschrieben:

Ich kümmere mich morgen abend mal drum, geht grad schlecht Arrow Freundin ist da

schönen gruß Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 12:48    Titel: Re: Template - type 'xy' unexspected Antworten mit Zitat

Ich wollte ja auch nur wissen, was die MSDN zu diesem Fehler sagt(nicht allgemein): Wink
GreveN hat Folgendes geschrieben:
Code:
error C2062: type 'xy' unexpected


Aus dem MSDN-Eintrag bin ich leider nicht wirklich schlau geworden... Confused

_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 31.12.2004, 13:43    Titel: Antworten mit Zitat

Zitat:

type 'type' unexpected

The compiler did not expect a type name. The following sample generates C2062:
Code:

// C2062.cpp
class A {
   public:
      int i;   // ok
   protected:
      int j;   // ok
   private:
      int k;   // ok
   :
      int l;   // C2062
};

int main() {
}


C2062
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 01.01.2005, 18:54    Titel: Antworten mit Zitat

Ok, scheinbar handelt sichs dabei mal wieder um einen VC-Bug... -.-

http://www.tek-tips.com/viewthread.cfm?qid=676168&page=1
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum