C# foreach循环
foreach (XmlNode item in node)
{
}
这儿的循环,如果把XmlNode换成var会报错,为什么? 不是自动识别类型的吗
C# foreach循环
foreach (XmlNode item in node)
{
}
这儿的循环,如果把XmlNode换成var会报错,为什么? 不是自动识别类型的吗
node的类型为XmlNodeList, XmlNodeList定义如下:
public abstract class XmlNodeList : IEnumerable, IDisposable
它实现IEnumerable接口,返回的enumerator (枚举)为 object ,如果按照foreach (XmlNode item in node)使用,
.net会将object转换为XmlNode,而如果是var,会当作 object 对待。