Mir wurde gesagt, dass ich eine Funktionsvorlage erstellen soll, die 4 Argumente aufnehmen soll:
- Zeiger
- Referenz
- Zeiger auf Array
- Zeiger auf Funktion
Wie ist diese Aufgabe zu erfüllen? Ich habe es versucht:
#include <iostream>
using namespace std;
int nothing(int a)
{
return a;
}
template<typename T> T func(int *L, int &M, char *K, int (*P)(int))
{
cout << L << "," << M << "," << K[0] << "," << P() << endl;
return 0;
}
int main()
{
int x = 3;
int *z = &x;
int &y = x;
char c[3];
int (*pf)(int) = nothing;
cout << "some result of func" << func(z, y, c, pf) << endl;
system("pause");
return 0;
}
Dies ergibt "keine passende Funktion, ich vermute für 'pf'. Auch jetzt habe ich keine Kontrolle über das, was in pf übergeben oder bin ich falsch?