Alllocation указателей в C++
char *(*)(char *, char *));
привет, мне нужно выделить этот указатель в c++, я не знаю, как это сделать, может ли кто-нибудь объяснить мне это спасибо.
Что я уже пробовал:
я ничего не понимал в этом указателе
char *(*)(char *, char *));
Там чего-то не хватает.char *
определяет тип возвращаемого значения указателя функции.(*)
недопустимо как есть; если вы собираетесь объявить указатель на функцию, вы должны дать ему имя, например (*function_name)
Кроме того, есть закрывающая скобка, которая не соответствует ее открывающей.
Например:
#include <iostream> using namespace std; char * func1(char *s1, char *s2) { return "In func1()\n"; } char * func2(char *s1, char *s2) { return "In func2()\n"; } int main() { char * (*myfunc)(char *, char *); myfunc = func1; cout << myfunc("", ""); myfunc = func2; cout << myfunc("", ""); return 0; }
In func1() In func2()
5.
Интересная ссылка. Я заклеил его закладкой, я совершенно уверен, что когда-нибудь он каким-то образом пригодится.
Спасибо.