Изменить: Сегодня я узнал, как лучше это сделать. Пожалуйста, см. Ответ ircmaxell.
Разбор выходных данных SHOW COLUMNS FROM table;
. Здесь вы найдете более подробную информацию: http://dev.mysql.com/doc/ RefMan / 5.0 / ен / шоу-columns.html
p-> pfn
- указатель указателя -в функцию-член. Чтобы вызвать функцию с помощью такого указателя, вам необходимо использовать оператор -> *
или оператор . *
и указать объект типа C
в качестве левый операнд. Вы этого не сделали.
Я не знаю, какой объект типа C
должен использоваться здесь - только вы это знаете - но в вашем примере это может быть * это
. В этом случае вызов может выглядеть следующим образом
(this->*p->pfn)(val)
Чтобы он выглядел менее запутанным, вы можете ввести промежуточную переменную
PFN pfn = p->pfn;
(this->*pfn)(val);
p-> pfn - указатель на функцию. Вам нужно использовать *, чтобы он работал. Измените на
(*(p->pfn))(val)