您的位置:首页 > 编程语言 > C语言/C++

C/C++语言之通过定义指针函数方式来实现在一个cpp文件里面获取另外一个cpp文件函数的返回值

2017-05-14 23:37 1396 查看

1、定义函数指针

typedef int (* fun) ();

static fun f;

2、代码实现



3、结果



4、总结

我们可以这样使用

在a.h文件里面里面定义函数指针,并且有个传递函数指针的方法

typedef std::string (*fun)();

void  f2(fun f 1);


然后在a.cpp文件里面实现f2方法

static fun f;

void f2(fun f1) {

f = f1;

}

void f2 () {

std:string result = f();

}


我们把需要的得到的数据写为一个方法,让后把这个方法的指针的作为a.h里面的f2函数里面的参数,所以在a.cpp文件里面就可以拿到这个我们想要的结果值

在c.cpp中

#include "a.h"

std::string ff() {

return "result";

}

void init() {

f2(ff);

}


所以这个时候a.cpp里买你的f2()函数里面的f()方法得到是result就是我们需要的数据。

有点类似java里面的callback,可以参考我的这边博客

http://blog.csdn.net/u011068702/article/details/71513005

 Android之在Activity中动态得到Adapter类中数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐