返回信息流1 #include <iostream>
2
3 template <typename T>
4 inline int printMax(const T& a, const T& b, void* func)
5 {
6 typedef int (*PFUNC)(const T&);
7
8 reinterpret_cast<PFUNC>(func)(a > b ? a : b);
9
10 return 0;
11 }
12
13 int print(const int& val)
14 {
15 std::cout << val << std::endl;
16 return 0;
17 }
18
19 int main()
20 {
21
22 int x = 123;
23 int y = 234;
24
25 printMax<int>(x, y, reinterpret_cast<void*>(&print));
26 return 0;
27 }
===================================================================================
这是一C++程序,gcc编译正常,输出也正常,是234;
当我把程序的13行改为 13 int print(const int val)的时候就不行了,能正常编译,但结果不对。为什么 这里传值就不行呢?[em9]
请版上高手多多发言,先谢谢了[em17]
这是一条镜像帖。来源:北邮人论坛 / cpp / #25991同步于 2009/7/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
求解答:一个关于模板函数的问题
kdper
2009/7/8镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。