c++ - 将 C 函数数组转换为 C++ 函数指针数组?

标签 c++ c

我正在将 C 代码转换为 C++,在代码的一部分中我有类似的东西 C 中的函数数组如下所示:

这是 C 的样子:

void func1(bool a)
{
..
}

void func2(bool a)
{
..
}

void func3(bool a)
{
..
}


struct func
{
    void (*f)(incoming *);
    int arg_length;
};
typedef struct func func;

func funcs[] = {
        { func1, 4 }, 
        { func2, 10 }, 
        { func3, 4 }  
    };

如何转换成c++?
更新:
问题:这是非静态函数指针的有效答案吗?
http://www.newty.de/fpt/fpt.html#chapter2

我也可以定义不同类型成员函数指针的数组吗?

最佳答案

在您的情况下,您可以定义一个类,并插入一个“[]”运算符以获取指向函数的指针。

关于c++ - 将 C 函数数组转换为 C++ 函数指针数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11591165/

相关文章:

c++ - 将图像集成到我的可执行文件中

c - 如何为 kotlin native 创建 void* 指针

调用NSIS中的dll函数并返回 bool 值

java - main 函数不返回任何内容。为什么?

c++ - 你能反转初始化列表中参数扩展的顺序吗?

c++ - 使用堆栈将字符串格式的小数转换为 double

c - 使用 FFTW 的 2D R2C FFT 作为 1D FFT

c - 有没有办法获得有关整数提升的警告?

c++ - GetTextExtentPoint32 不考虑当前字体

c++ - 在不向用户公开库的情况下静态包装库的多态迭代器