map存放函数指针
map里存放函数指针
由于有时候,想把某一类功能的函数,存在一个map里,所以写了一个demo
代码
源码如下(已本地运行通过):
1 | // |
//PS: map的第二个参数为什么用了long型,而不是int型
//由于在XCode编译报错 Cast from pointer to smaller type ‘int’ loses information
//报错原因是:由于使用了强转将void转为int,而在XCode上使用的为x64的编译,X64下的void地址为8字节,而int为4字节,强转时会导致越界,故出现此错误。
源码运行后到结果如下:
总结
注意类型强制转换到时候,可能会有越界报错
源码已同步到github上:https://github.com/TreeAndFlower/map_func_ptr