标题:异常处理的问题
只看楼主
comebaby
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2006-6-17
 问题点数:0 回复次数:3 
异常处理的问题

可以帮我解释一下,下面程序出错的原因吗?


#include<iostream>
#include<limits>
using namespace std;

class Range_error
{
private:
int i;
public:
Range_error(int ii):i(ii){}
int iii() const
{
return i;
}

};

char to_char(int i)
{
if(i<numeric_limits<char>::min()||i>numeric_limits<char>::max())
throw Range_error(i);
return i;
}

void g(int i)
{
try
{
char c=to_char(i);
cout<<c<<"\n";
}
catch(Range_error x)
{
cerr<<x.iii()<<"\n";
}
}

int main()
{
int i;
cin>>i;
g(i);
return 0;
}




F:\VC++6.0编辑器\MSDev98\MyProjects\fght\jtyty.cpp(21) : error C2872: 'range_error' : ambiguous symbol
F:\VC++6.0编辑器\MSDev98\MyProjects\fght\jtyty.cpp(32) : error C2872: 'range_error' : ambiguous symbol

2006-12-26 01:05
shihuijie15
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-7-31
得分:0 
我试了一下好象没问题... 能正常运行!
2006-12-26 04:25
狐狸尾巴
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-9-4
得分:0 
运行正常啊。。。
2006-12-26 10:22
醉生梦死
Rank: 1
等 级:新手上路
帖 子:77
专家分:0
注 册:2007-8-21
得分:0 
没有问题,运行过了

2007-08-27 16:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-112114-1-1.html




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

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