| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 440 人关注过本帖
标题:[求助]关于函数的调用问题
只看楼主 加入收藏
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
结帖率:80%
收藏
 问题点数:0 回复次数:3 
[求助]关于函数的调用问题
下面的程序函数调用那错了



#include<iostream>
using namespace std;

template<typename t>
t max(int &a,char& b)
{
return(a>b?a:b);
}

int main()
{

int a1,a2;
char c1,c2;

a1=10;a2=50;
c1='a';c2=65;

cout<<"max="<<max(a1,c2)<<'\n'; //
getchar();
}
搜索更多相关主题的帖子: 函数 
2007-08-05 14:49
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
当然要错了,你这样定义模版函数,编译器不能做实参推断。
也就是t是什么类型不可知。

Fight  to win  or  die...
2007-08-05 15:00
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
收藏
得分:0 
那为什么这又是对的

#include<iostream>
using namespace std;
template<typename t>
t max(int &a,int& b)
{
return(a>b?a:b);
}
int main()
{

int a1,a2;
char c1,c2;
a1=10;a2=50;
c1='a';c2=65;
cout<<"max="<<max(a1,a2)<<'\n';
getchar();
}

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2007-08-05 18:48
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
可以推断了啊,int型。
你这样弄个模版函数,不是多余了吗?
你想比较int和char,直接不用模版就行,你想在模版函数里用内置类型的隐式转换不可行。
最好去看看,关于模板的实参推断机制,你就清楚了!

Fight  to win  or  die...
2007-08-05 18:57
快速回复:[求助]关于函数的调用问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016588 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved