我对于什么是对象转换以及它的用途有点困惑。 我已阅读关于Casting and type conversion的MSDN文档,我可以看到为了进行显式转换,您需要使用一个演员操作符。我理解文档中给出的示例,如果在将一种类型转换为另一种类型时可能会丢失一些数据,则需要使用转换运算符。什么是对象铸造?
我只是对如何投射物体感到困惑?我假设对象是一个类的实例,可能容纳更多的信息,而不仅仅是一个简单的数据类型?那么,如何,为什么以及何时需要投射物体?
我见过铸造一个对象,这是一个简单的例子:
SomeType name = (SomeType)obj;
我缺少的东西,或者是这个对象铸造?如果是这样,你需要在什么情况下投出这样的对象?
拆箱是一种情况..我们不得不在c#中引入泛型方法之前进行过多的铸造。这是因为太多的方法使用'object'参数,比如非通用版本'List'。想想发件人如果输入'object'并且你需要将它转换为'Button'的事件。确定'as'运营商是首选,但我只是想解释一个有效的案例。 – user3185569