Servus,
lacht mich bitte net aus aber ich seh kein Land. Ich hab ein Header File. In diesem Header File ist eine Template Funktion:
#ifndef QWT_MATH_H
#define QWT_MATH_H
template <class T>
void qwtShiftArray(T *arr, int size, int di)
{
//Mach irgendwas
}
#endif
Dieses Header File(qwt_math.h) binde ich mit #include "qwt_math.h" in eine andere Klasse ein. Was muss ich tun, um auf diese Funktion zugreifen zu könen??? Wenn ich sie einfach so aufrufe meckert der Compiler:
no matching function for call to `qwtShiftArray (long int &, const int &, int)
Er wird wahrscheinlich recht haben, aber ich komm net weiter.
cu
flinkflash
Template Klasse(Funktion) einbinden
-
- Beiträge: 17
- Registriert: 01.07.2003 22:56:16
Sehe ich das richtig, Du willst die Funktion mit 3 int's als Parameter aufrufen?
Bin leider nicht der Template Spezie, aber Templates sind halt nur Blueprints, der eigentliche Code wird vom Comiler erzeugt, wenn er dann weiß, welche Klasse den als der Templateparameter übergeben wird. Und ich weiß nicht (bezweifle es aber) ob Du einen int als ersten Parameter übergeben kannst. Vielleicht kannst Du ja etwas mehr verraten? Zu so einer Template-Funktion/Klasse gehört eigentlich auch immer ein Beschreibung, welchen Anforderungen die zu übergebenden Klassen genügen müßen.
Bin leider nicht der Template Spezie, aber Templates sind halt nur Blueprints, der eigentliche Code wird vom Comiler erzeugt, wenn er dann weiß, welche Klasse den als der Templateparameter übergeben wird. Und ich weiß nicht (bezweifle es aber) ob Du einen int als ersten Parameter übergeben kannst. Vielleicht kannst Du ja etwas mehr verraten? Zu so einer Template-Funktion/Klasse gehört eigentlich auch immer ein Beschreibung, welchen Anforderungen die zu übergebenden Klassen genügen müßen.
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de
xmpp:bert@debianforum.de
Doch, das geht. Warum sollte man auch nicht drei int-Parameter übergeben können sollen?Bert hat geschrieben:Und ich weiß nicht (bezweifle es aber) ob Du einen int als ersten Parameter übergeben kannst.
flinkflash. zeig doch bitte mal, wie Du die Funktion aufrufst; inklusive der Deklaration der beim Funktionsaufruf übergebenen Variablen. Dann sehen wir weiter...