请教一个 c++ member function pointer 问题# JobHunting - 待字闺中
c*z
1 楼
请大家看看为什么编译通不过,谢谢. 始终说最后的函数地址不match定义 。
牛人看看。
//header file
class Function_pointer
{
public:
int next(int n);
int before( int n);
int next_after_next( int n);
typedef int (*f)(int n);
void update( int n, f pointer );
};
// .cpp file
# include
# include"Header.h"
using namespace std;
int Function_pointer::next(int n)
{
return n +1;
}
int Function_pointer::before( int n)
{
return n - 1;
}
int Function_pointer::next_after_next( int n)
{
return n + 1 + 1;
}
void Function_pointer::update( int n, f pointer )
{
pointer(n);
}
void main()
{
Function_pointer myFunc;
myFunc.update( 1, &Function_pointer::next);
}
牛人看看。
//header file
class Function_pointer
{
public:
int next(int n);
int before( int n);
int next_after_next( int n);
typedef int (*f)(int n);
void update( int n, f pointer );
};
// .cpp file
# include
# include"Header.h"
using namespace std;
int Function_pointer::next(int n)
{
return n +1;
}
int Function_pointer::before( int n)
{
return n - 1;
}
int Function_pointer::next_after_next( int n)
{
return n + 1 + 1;
}
void Function_pointer::update( int n, f pointer )
{
pointer(n);
}
void main()
{
Function_pointer myFunc;
myFunc.update( 1, &Function_pointer::next);
}