| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 497 人关注过本帖
标题:异常处理
只看楼主 加入收藏
casualhewo
Rank: 1
等 级:新手上路
帖 子:267
专家分:0
注 册:2006-6-13
收藏
 问题点数:0 回复次数:3 
异常处理
图片附件: 游客没有浏览图片的权限,请 登录注册

异常处理(SEH)是什么意思啊.checked关键字又产生什么样的异常了。
希望高手给个示例说明一下.
2006-07-18 22:54
lyamlf123
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2005-2-10
收藏
得分:0 
在C#中的checked 和 unchecked 可以用来判断变量是否益出。
而在这个代码中,就是来判断当 mybyte 变量由byte型转化为 orientation时,变量存储的值是否益出
2006-07-19 02:24
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
收藏
得分:0 
自己寫個異常判斷byte轉換為該枚舉時
是否超出4或小於1 然後拋出異常

[url=javascript:alert(1);] [div]fdgfdgfdg\" on\"[/div] [/url]
2006-07-19 09:08
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 

在网上搜索到的关于checked,unchecked操作的详细介绍:

[QUOTE]C#中的checked、unchecked操作符(ZT)

checked和unchecked操作符用于整型算术运算时控制当前环境中的溢出检查。下列运算参与了checked和unchecked检查(操作数均为整数):
1) 预定义的++和――一元运算符。
2) 预定义的-一元运算符。
3) 预定义的+、-、×、/等二元操作符。
4) 从一种整型到另一种整型的显示数据转换。

当上述整型运算产生一个目标类型无法表示的大数时,可以有相应的处理方式:

(一)使用checked
若运算是常量表达式,则产生编译错误:The operation overflows at complie time in checked mode.
若运算是非常量表达式,则运行时会抛出一个溢出异常:OverFlowException异常

(二)使用unchecked
无论运算是否是常量表达式,都没有编译错误或是运行时异常发生,只是返回值被截掉不符合目标类型的高位。

(三)既未使用checked又未使用unchecked
若运算是常量表达式,默认情况下总是进行溢出检查,同使用checked一样,会无法通过编译。
若运算是非常量表达式,则是否进行溢出检查,取决于外部因素,包括编译器状态、执行环境参数等。

下例说明了checked和unchecked操作符在非常量表达式中的使用方法:

[CODE]class Test
{
static int x = 1000000;
static int y = 1000000;
static int F()
{
return checked(x*y); //运行时抛出OverFlowException异常
}
static int G()
{
return unchecked(x*y); //截去高位部分,返回-727379968
}
static int H()
{
return x*y; //依赖于编译器的默认设置,一般是不检查
}
}
checked和unchecked操作符在常量表达式中的使用方法:
class Test
{
const int x = 1000000;
const int y = 1000000;
static int F()
{
return checked(x*y); //编译错误,编译无法通过
}
static int G()
{
return unchecked(x*y); //截去高位部分,返回-727379968
}
static int H()
{
return x*y; //编译错误,编译无法通过
}
}[/CODE][/QUOTE]


此号自封于2006年11月30日
2006-07-19 11:20
快速回复:异常处理
数据加载中...
 
   



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

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