Joa*_*nge 6 .net c# interface class
可能重复:
为什么我不能使用带显式运算符的接口?
当我这样做:
public struct Effect
{
public IEffect IEffect { get; private set; }
public Effect ( IEffect effect )
{
this.IEffect = effect;
}
public static implicit operator IEffect ( Effect effect )
{
return effect.IEffect;
}
public static explicit operator Effect ( IEffect effect )
{
return new Effect ( effect );
}
}
Run Code Online (Sandbox Code Playgroud)
我得到这样的编译器错误:
'ImageEditor.Effect.implicit operator ImageEditor.IEffect(ImageEditor.Effect)':不允许在接口之间进行用户定义的转换.
他们为什么不被允许?这不是一个好习惯吗?
这在C#语言规范的第10.10.3节中有详细说明.
为什么虽然是......的总结原因
| 归档时间: |
|
| 查看次数: |
250 次 |
| 最近记录: |