为了账号安全,请及时绑定邮箱和手机立即绑定

自定义类型转换是写在被转换的类中码?

比如把狗转化成猫咪

是应该写在狗过的类中吗?

正在回答

1 回答

对的。

若在类Dog.cs中写下

public static implicit operator Cat(Dog dog)
        {
            return new Cat(dog._name);
        }

则在static void Main(string[] args)中可用

Dog d1 = new Dog("Tom");
Cat c1 = d1;

实现狗到猫的隐式类型转换。


若在类Cat.cs中写下

public static explicit operator Dog(Cat cat)
        {
            return new Dog(cat._name);
        }

则在static void Main(string[] args)中可用

Cat c2 = new Cat("Bob");
Dog d2 = (Dog)c2;

实现猫到狗的显示转换。

2 回复 有任何疑惑可以回复我~
#1

零零拾 提问者

非常感谢!
2017-03-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

自定义类型转换是写在被转换的类中码?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信