【发布时间】:2014-01-30 09:16:36
【问题描述】:
我有一个构建类和 C'tor,但由于某种原因,它会在每次迭代后删除“polygonList”。 通常它从包含 ID 号和点 ID 的 txt 文件中读取行。 必须说我有类似形式的课程,效果很好。
任何提供我做错了什么?
calling from main class:
tempPoly = new Polygon(totalLine,pointsList);
班级
public class Polygon
{
public int polyID;
public List<Polygon> polygonList = new List<Polygon>();
public List<Point2D> vertexPoints = new List<Point2D>();
public List<Point2D> VertexPoints
{
get { return vertexPoints; }
set { vertexPoints = value; }
}
public Polygon(int polyID, List<Point2D> vertexPoints)
{
PolyID = polyID;
VertexPoints = vertexPoints;
}
public Polygon(string[] line, List<Point2D> points)
{
for (int k = 0; k < line.Length; k++)
{
foreach (var point in points)
{
if (line[k] == point.PntID)
{
VertexPoints.Add(point);
break;
}
}
}
polygonList.Add(new Polygon(int.Parse(line[0]), VertexPoints));
}
}
【问题讨论】:
-
那里为什么要休息?
-
@Robuust 如果找到匹配则停止迭代点-然后我们转到下一行
-
每次迭代是什么意思?您只向多边形列表添加一个带有第一行的多边形,并且它没有任何迭代
-
每次迭代=txt 文件中的新行。上面没有引用循环@SergeyBerezovskiy
-
@DimaB 不清楚你在问什么,以及引用的循环是什么。您不是在循环中将项目添加到 polygonList 。此外,完全不清楚您如何调用构造函数。变量名不足以理解您传递给构造函数的内容。
标签: c# list class constructor