我有一个std :: Points列表(只存储一个x,y).这些点中的每一个都代表一个多边形,我稍后将其绘制.
class Point {
public:
int x, y;
Point(int x1, int y1)
{
x = x1;
y = y1;
}
};
std::list <Point> currentPolygon;
Run Code Online (Sandbox Code Playgroud)
我想有一个这些多边形的列表(列表本身).
这可能吗?我如何有一个点列表的std ::列表(所以我可以存储多个多边形).
Jef*_*rey 10
确实是.但是你可能想要的 - 为了以后的可扩展性目的 - 创建第二个类 - "多边形",它包含一个点列表.然后使用多边形列表.
编辑:我不是C++程序员,所以我确信如果你需要一个真正的项目,像j_random_hacker的响应更好.我只是想给出一个这个设计的快速代码示例.
class Point {
public:
int x, y;
Point(int x1, int y1)
{
x = x1;
y = y1;
}
};
class Polygon {
public:
std::list <Point> currentPolygon;
Polygon(std::list <Point> p1)
{
currentPolygon = p1
}
};
Run Code Online (Sandbox Code Playgroud)
你可以用这个:
std::list< std::list<Point> > polygons;
Run Code Online (Sandbox Code Playgroud)
为了简化操作,请使用typedef.
class Point {
public:
int x, y;
Point(int x1, int y1)
{
x = x1;
y = y1;
}
};
typedef std::list<Point> PolygonType;
typedef std::list<PolygonType> PolygonsType;
Run Code Online (Sandbox Code Playgroud)