有没有办法通过在c ++中读取文件来构造函数指针

时间:2013-10-30 04:20:59

标签: c++ c file function-pointers

我在文件中有一个函数原型。有没有办法通过在c ++运行时读取文件来创建函数指针?

3 个答案:

答案 0 :(得分:2)

您正在libffi正在寻找Wikipedia

  

libffi是一个外部函数接口库。它提供了一个C.   用于调用本机编译函数的编程语言接口   在运行时给出有关目标函数的信息而不是   编译时间。它还实现了相反的功能:libffi   可以生成一个指向可以接受和解码任何函数的函数的指针   运行时定义的参数组合。

答案 1 :(得分:0)

没有。函数原型只是一个函数如何使用的陈述;它不能单独执行。

如果您有一个函数的名称,并且想要将其转换为函数指针,则可以使用dlsym(RTLD_DEFAULT, "fn")执行此操作。不过不推荐。

答案 2 :(得分:0)

您可以使用系统调用(使用标准库的system函数)来调用从函数文件创建动态库的编译器。然后,您可以使用dlopenLoadLibrary加载库,具体取决于平台。

修改 当然,如果你真的只有一个原型而不是定义,这将不起作用。在那种情况下,我很抱歉我误解了你的问题。