komplizierte Sache
-
sachgegenstand ist folgender:
wobei die Klasse cmatrix als gegeben und korrekt angenommen werden sollte.template <class Tresult, class Targument> class cfunction { public: virtual Tresult solve(const Targument& argument) const; virtual Tresult operator () (const Targument& argument) const; };[...]
template <class Tresult, class Targument, unsigned int n> class cmonom : public cfunction<Tresult, cmatrix<Targument, n, 1>>, public cmatrix<int, n, 1> { public: Tresult solve(const cmatrix<Targument, n, 1>& argument) const; //... };[...]
template <class Tresult, class Targument, unsigned int n> Tresult cmonon<Tresult, Targument, n>::solve(const cmatrix<Targument, n, 1>& argument) const { //... };ich bekomme folgende fehlermeldung:
error C2143: syntax error : missing ';' before '<'
im letzten codeteil beiTresult cmonon<Tresult, Targument, n>::solve(const cmatrix<Targument, n, 1>& argument) constkann damit aber nichts anfangen, weil ich den fehler nicht sehe.
ich weiß das ist recht kompliziert, aber bin für jede hilfe dankbar, da ich wohl gerade ein brett vor dem kopf habe. wenn etwas unklar ist werde ich versuchen es noch mal genauer zu erklären.
danke schon mal im voraus.
-
ich hätte da mal ne blöde frage (typisch ich :p )
stimmt es mit dem "cmonon" so? Ich kann das grad irgendwie nicht so richtig zuordnen, was ist das?falls es nähmlich nicht so gedacht war, und du den text wortwörtlich bzw "charcharlich"
aus deinem code rauskopiert hast, wird der compilerTresult cmonon;//variablendeklaration? her mit dem semikolon!einfach für eine variablendeklaration halten, und der rest der zeile
</*die ganzen template params von cmonoM */>bleibt für den compiler rätselhaft und der fängt an zu meckern...

-
Andrey hat Recht. Da ist nirgends ein Fehler außer dem n-m Fehler.
( Das >> hast du bestimmt in deinem Code nicht, das würde ne andere Fehlermeldung rausspucken )
-
dumm, dumm, dumm

ja wer cmonon statt cmonom schreibt, gut das wars dann auch schon, viel wind um nichts. dennoch danke