关闭

函数指针强制类型转换

207人阅读 评论(0) 收藏 举报
分类:
</pre><span style="color: rgb(56, 56, 56); font-family: 'microsoft yahei', arial; font-size: 14px; line-height: 22px;">有时候某个函数具有我们所需要的功能,但是参数个数不同,不能直接调用。这个时候我个人的解决方案是:强制转换函数指针,截断后面的参数。但是一般最好不这样用。。</span><div style="margin: 0px; padding: 0px; border: 0px none; outline: 0px; color: rgb(56, 56, 56); font-family: 'microsoft yahei', arial; font-size: 14px; line-height: 22px;">用函数for_each来举例,代码如下:</div><pre name="code" class="cpp">
#include "stdafx.h"
#include "stdio.h"
#include "vector"
using std::vector;
void Print(int n,int nn)
{
	fprintf(stdout, "%d\t", n);
}
typedef void(*P)(int);
P p=(P) Print;

int main(int argc, char **argv, char ** env)
{
	vector<int> vecInt = {0,1,2,3,4};
	for_each(vecInt.begin(), vecInt.end(), p);
}



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:20253次
    • 积分:707
    • 等级:
    • 排名:千里之外
    • 原创:71篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类