expected class-name before ',' token

Alles rund um die Programmierung mit Qt
Antworten
radon
Beiträge: 3
Registriert: 11. Juli 2011 00:26

expected class-name before ',' token

Beitrag von radon »

Hi,

beim compilieren von tirius erhalte ich folgende Fehlermeldung:

/stir_sources/AlgoStirOSMAPOSL.h:106: error: expected class-name before ',' token
mingw32-make[1]: Leaving directory `C:/MinGW/msys/1.0/home/tirius-build-desktop'
mingw32-make[1]: *** [release/main.o] Error 1
mingw32-make: *** [release] Error 2
Der Prozess "C:\QtSDK\mingw\bin\mingw32-make.exe" wurde mit dem Rückgabewert 2 beendet.
Fehler beim Erstellen des Projekts tirius(Ziel: Desktop)
Bei der Ausführung von Build-Schritt 'Make'


hier der Ausschnitt der Datei AlgoStirOSMAPOSL.h:


class cAlgoStirOSMAPOSL : public OSMAPOSLReconstruction, public cAlgo {
public:
cAlgoStirOSMAPOSL();
cAlgoStirOSMAPOSL(mINT matrixID);
~cAlgoStirOSMAPOSL();


in der obersten Zeile (im Program 106) ist der Fehler markiert.

Was kann ich tun?

Ps. die "stir/OSMAPOSL/OSMAPOSLReconstruction.h" inkludiert.

Viele Grüße
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Ohne kompletten (minimalen) Code und Kristallkugel können wir nicht helfen - ggf. ein Semikolion vergessen oder einfach einen Header für eine benutzte Klase nicht inkludiert.
Des weiteren (unabhängig vom Fehler) - was soll msys da im Pfad? Das kann nur zu Problemen führen...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
radon
Beiträge: 3
Registriert: 11. Juli 2011 00:26

Beitrag von radon »

Ok
Danke für die Antwort.

Hier die relevanten Dateien im Anhang...

ps. (das msys stand so im readme :wink:) ich habs mal in einem extra Pfad versucht. Leider ohne Erfolg.

Grüße

Fabian
Dateianhänge
AlgoStirOSMAPOSL.h
(9.07 KiB) 89-mal heruntergeladen
OSMAPOSLReconstruction.h
(6.03 KiB) 78-mal heruntergeladen
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Ist denn der Code von dir, oder ist das ein Projekt, das du verwenden willst?
Definitiv ist das nämlich ein Programmierfehler, läuft auf das hier hinaus:

Code: Alles auswählen

template<typename T>
class Base
{};

template<typename T>
class Derived : public Base<T>
{};

class Special : public Derived
{};

int main() {
    Special s;
}
Compiler-Output:

Code: Alles auswählen

template_inheriting_template.cpp:10: Fehler: expected class-name before »{« token
Base <> IterativeReconstruction
Derived <> OSMAPOSLReconstruction
Special <> cAlgoStirOSMAPOSL

OSMAPOSLReconstruction (oben: Derived) ist einfach ein template, ein Template-Parameter MUSS angegeben werden!
radon
Beiträge: 3
Registriert: 11. Juli 2011 00:26

Beitrag von radon »

oha

cool danke.

Nein. Dieser Code ist nicht von mir.

Ich werde nun versuchen den Fehler zu beheben.

Ich gebe dann eine Rückmeldung.

Grüße

Fabian
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Ich nehme an, dein Unterfangen ist recht sinnlos :/
Tirius hat 2008 eine Beta veröffentlicht, seitdem nichts mehr. Stir dagegen hat sich weiter entwickelt. Ich nehme an, die stir-Klassen waren früher keine Templates, dann würde der Tirius-Code Sinn machen.
Du kannst ja mal bei den Tirius-Entwicklern anfragen, mit welcher stir-Version die gearbeitet haben, und ob die noch eine Kopie rumliegen haben. Falls nicht, bekommst du vllt. noch bei den stir-Leuten eine...
Antworten