Я пытаюсь передать функцию из класса в другой аргумент функции. Я получаю эту ошибку.C++: функция-член как аргумент другой функции
ошибка: аргумент типа 'недействительным (A_t ::) (интермедиат)' не совпадает с 'недействительным (*) (межд)'
Есть ли способ, чтобы справиться с этим, по-прежнему используя функцию внутри класса a. Заранее спасибо.
#include <iostream>
using namespace std;
void procces(void func(int x),int y);
class A_t
{
public:
A_t();
void function(int x)
{
cout << x << endl;
}
};
int main()
{
A_t a;
procces(a.function,10);
}
void procces(void func(int x),int y)
{
func(y);
return;
}
Правильно, указатели на функции и указатели на функции функций - это одно и то же. – chris
См. Http://www.parashift.com/c++-faq/pointers-to-members.html, что является первым, что появилось, когда я google'd «аргумент функции-члена», «указатель функции-члена» или «член как аргумент другой функции » – kfsone
@kfsone, +1, но никто больше не читает C++ FAQ lite, легче перейти к SO, чем пытаться узнать :-( –