Template Error: no matching function for call to



  • Ich programmiere jetzt zum ersten Mal mit Templates und kann meinen Fehler nicht finden. Wäre nett, wenn mir jemand weiterhlefen könnte. Danke.

    class Quaternion {
    template<class M,long int i, long int j> matrix<M,i,j> get_matrix() {
    /*Code*/
    }
    };
    
    int main() {
      Quaternion q = Quaternion(1.,0.,0.,0.);
      matrix<double,3,3> res;
      res = q.get_matrix()
      cout << res
      return 0;
    }
    

    Wenn ich das nun mit dem gcc 4.3 kompilieren bekomme ich den Fehler: no matching function for call to ‘Quaternion::get_matrix()’.
    Was mache ich falsch?



  • Du hast bei get_matrix() keine Templateargumente angegeben:

    res = q.get_matrix<double, 3, 3>();
    

Anmelden zum Antworten