首页 新闻 会员 周边 捐助

c# 高手进............

0
悬赏园豆:5 [已解决问题] 解决于 2013-02-02 14:44

红线的这些在实际开发中怎么使用??还有谁能解释下checked unchecked这两个关键字

彬彬@科比的主页 彬彬@科比 | 初学一级 | 园豆:43
提问于:2013-01-28 15:35
< >
分享
最佳答案
0

1、红线处用法:"123"=="123"

2、unchecked就是内部的计数忽略溢出的问题,即当一个int32值等于int32.maxValue时,再加1就会报错OverflowException,然而使用unchecked包括这个算法就不会报溢出的错。http://www.cnblogs.com/limingluzhu/archive/2011/11/07/2239130.html

收获园豆:5
滴答的雨 | 老鸟四级 |园豆:3660 | 2013-01-28 15:40

另外楼主的题目总是如此霸气,然后问题却不大匹配。题目还是建议起个和问题相关的。

滴答的雨 | 园豆:3660 (老鸟四级) | 2013-01-28 15:43

@滴答的雨: 

此人风格一向如此,鉴定完毕。:)

Rich.T | 园豆:3440 (老鸟四级) | 2013-01-28 15:58

不是吧

 int i = 1;
  bool bol = i == 1;

int中也没有重载==这个符号呀。。怎么也能这样使用??跟这个没有关系吧

彬彬@科比 | 园豆:43 (初学一级) | 2013-01-28 15:59

@彬彬@科比: 也许字符串是引用类型需要显示实现!Int32这些是值类型隐士实现。但这些实现实际上都是会调用例如CompareTo()、Equals()等函数

滴答的雨 | 园豆:3660 (老鸟四级) | 2013-01-28 16:08

@彬彬@科比: 请学习下操作符重载的知识,这是从C++继承过来的设计。其目的为了替换默认的操作符功能。

http://blog.csdn.net/btooth/article/details/981245

Launcher | 园豆:45050 (高人七级) | 2013-01-28 17:58
其他回答(1)
0

checked http://www.cnblogs.com/greenerycn/archive/2010/07/23/use_checked_to_avoid_overflow.html

红线部分是操作符重载,也就是说如果你写下这样的代码:

string s1,s2;

bool b = s1 == s2; // 将会使用你红线中重载的 == 操作来执行该语句。

Launcher | 园豆:45050 (高人七级) | 2013-01-28 15:40

不是吧

 int i = 1;
  bool bol = i == 1;

int中也没有重载==这个符号呀。。怎么也能这样使用??跟这个没有关系吧

支持(0) 反对(0) 彬彬@科比 | 园豆:43 (初学一级) | 2013-01-28 15:59

@彬彬@科比: 请学习下操作符重载的知识,这是从C++继承过来的设计。其目的为了替换默认的操作符功能。

http://blog.csdn.net/btooth/article/details/981245

支持(0) 反对(0) Launcher | 园豆:45050 (高人七级) | 2013-01-28 17:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册