首页 > 解决方案 > 指向具有可变数量参数的函数的指针数组

问题描述

在我的学习中,我有以下任务要做:

我有一些不同的排序方法,例如冒泡排序、快速排序等。

我必须创建一个指针数组,每个指针都指向一个给定的方法。然后我可以使用 for 循环执行所有排序方法。

但是,并非所有排序函数都采用相同数量的参数。IE:

void quickSort( int*, int, int );获取指向数据数组和 2 个整数的指针

void double bubbleSort( int*, int);只需要一个 int

我在互联网上搜索,发现以下解决方案可能有效:

void (*pointer)( ... ) = (void (\*)( ... ))quickSort;

但我也听说这样的声明很危险,不推荐。所以这是我的问题:有没有安全的方法来声明这样的数组?它会是什么样子?

标签: carraysfunctionpointers

解决方案


推荐阅读