这种不兼容的类型分配怎么可能?

时间:2015-10-23 09:58:04

标签: c# visual-studio-2013

我正在为VS2013开发一些自定义编辑器。我遇到了以下函数调用:

enter image description here

如何将SnapshotPoint struct参数传递给int参数?

Span的第二个重载是:

Span.Span()

3 个答案:

答案 0 :(得分:3)

SnapshotPoint可以是implicitly converted到整数。

  

将快照点隐式转换为等于快照

中快照点位置的整数
public static implicit operator int (
  SnapshotPoint snapshotPoint
)

答案 1 :(得分:3)

最有可能因为SnapshotPointimplicit conversion to int

像这样:

public static implicit operator int(SnapshotPoint s)
{
    return s.SomeProperty;
}

答案 2 :(得分:3)

由于SnapshotPoint同时实现了custom addition operator(所以span.Start + offset会返回另一个SnapshotPoint)和implicit conversion to int