荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: playboy (我要成为SAM), 信区: Program
标 题: C++函数的调用
发信站: BBS 荔园晨风站 (Sun Jan 16 11:42:00 2000), 转信
发信人: frank(Frank), 信区: Programming
标 题: C++函数调用方法
发信站: BBS 水木清华站 (Fri Oct 16 18:26:43 1998)
C++的类里面可以这样用函数指针在一个成员函数调用另一个成员:
class A
{
public:
int num;
double f1(int n);
void run();
};
typedef double (A::*pFunc)(int);
double A::f1(int n)
{
return (double)(num + n);
}
void A::run()
{
int n = 10;
pFunc pf = f1;
double x = (this->*pf)(n);
...
}
这样就不用把f1和num声明成静态成员了. 要注意的是, 函数指针定义的时候
要加上类的作用符::, 使用的时候要加上this指针, 因为类的成员都有隐含
this指针.
这种方法一般书里都没讲, 是我试出来的, 不知是不是很正规.
--
※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.90]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店