C++里怎样输出重载函数的某个版本的函数指针
其实这样也行int main(){ std::cout \u0026lt;\u0026lt; static_cast\u0026lt;int (*)(int)\u0026gt;(f); // int std::cout \u0026lt;\u0026lt; static_cast\u0026lt;float (*)(float)\u0026gt;(f); // float std::cout \u0026lt;\u0026lt; static_cast\u0026lt;char (*)(char)\u0026gt;(f); // char}只要你给出一个明确的目标,就会帮你做重载决议。这些目标包括:被初始化的对象或者引用被赋值的表达式函数的参数函数的返回值类型转换的目标模板的参数Ref: Address of an overloaded functionp.s. std::cout 直接输出函数指针的话,永远是 true 哟~(因为会先被转成 bool)
■网友#include \u0026lt;iostream\u0026gt;using namespace std;char f(char){ cout \u0026lt;\u0026lt; "char" \u0026lt;\u0026lt; endl; return 0;}int f(int) { cout \u0026lt;\u0026lt; "int" \u0026lt;\u0026lt; endl; return 0;}float f(float) { cout \u0026lt;\u0026lt; "float" \u0026lt;\u0026lt; endl; return 0;}int main(){ int (*fintp)(int) = \u0026amp;f; fintp(0); //int float(*ffloatp)(float) = \u0026amp;f; ffloatp(0); //float char (*fcharp)(char) = \u0026amp;f; fcharp(0); //char}
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义
