C# Study 3

Exception handling

没有什么新鲜的.

 

Operator overloading

很奇怪的是像+=之类的compound assignment 不能被overload,而只能被隐含地overload +来实现.如果这样的,有可能会造成性能上的问题.因为operator + 通常会返回一个新生成的object.而如果允许overload +=的话,就可以省去生成新的object.这个限制令人奇怪.

 

User defined conversions

example:

public class BigInt

{

    public int val;

    public static explicit operator int(BigInt n)

    {

        return n.val;

    }

}

不同之处是加入了implicit explicit的修饰符.

Deletegates and events

为什么event deletegate带的必须是一个Args的类?这样非常麻烦,每定义一个不同的event还得定义一个参数类,每次invoke delegate的时候还得生成一个Args类?真的是很奇怪很奇怪.

基本上要把”Inside C#”这本书读完了.回头看看发现这本书真是名不符实.很多C#的问题都是浅尝则止;可以算是一本不错的入门书,但离”Inside”还远得很.上AMAZON看看别人的评价也是如此.Anyway,可以考虑开始用C#写一个什么软件了吧.

posted on 2004-07-14 15:04  阿呆  阅读(428)  评论(0编辑  收藏  举报

导航