【问题标题】:Abstract class cast operator抽象类强制转换运算符
【发布时间】:2011-05-13 10:36:24
【问题描述】:

Poco 物品已包装好。

abstract class AbstractPocoUI<T> {
    protected T PocoItem;
}

class PocoA {

}
class PocoAUI:AbstractPocoUI<PocoA> {

}

我想做这样的事情

var c = new ObservableCollection<PocoAUI>(collectionOfTypePocoA.Cast<PocoAUI>());

如何在抽象类中覆盖强制转换运算符? 我应该在AbstractPocoUI 中做什么才能在PocoItem 字段中获得例如PocoAUIPocoA? 谢谢。

【问题讨论】:

    标签: c# casting abstract-class operator-keyword


    【解决方案1】:

    您可以实现IConvertible 接口或创建TypeConverter,但不能覆盖强制转换。


    看看隐式运算符重载here

    【讨论】:

    • 重写隐式运算符怎么样?
    • 如何在隐式运算符的覆盖内创建抽象PocoUI 版本的PocoA 对象?
    猜你喜欢
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多