当前位置:  开发笔记 > 编程语言 > 正文

是否可以(或者确定)拥有std :: list的std :: list?

如何解决《是否可以(或者确定)拥有std::list的std::list?》经验,为你挑选了2个好方法。

我有一个std :: Points列表(只存储一个x,y).这些点中的每一个都代表一个多边形,我稍后将其绘制.

class Point {
public:
    int x, y;
    Point(int x1, int y1)
    {
        x = x1;
        y = y1;
    }
};

std::list  currentPolygon; 

我想有一个这些多边形的列表(列表本身).

这可能吗?我如何有一个点列表的std ::列表(所以我可以存储多个多边形).



1> Jeffrey..:

确实是.但是你可能想要的 - 为了以后的可扩展性目的 - 创建第二个类 - "多边形",它包含一个点列表.然后使用多边形列表.

编辑:我不是C++程序员,所以我确信如果你需要一个真正的项目,像j_random_hacker的响应更好.我只是想给出一个这个设计的快速代码示例.

class Point {
public:
    int x, y;
    Point(int x1, int y1)
    {
        x = x1;
        y = y1;
    }
};

class Polygon {
public:
    std::list  currentPolygon;
    Polygon(std::list  p1)
    {
        currentPolygon = p1
    }
};



2> Matt Davis..:

你可以用这个:

std::list< std::list > polygons;

为了简化操作,请使用typedef.

class Point {
public:
    int x, y;
    Point(int x1, int y1)
    {
        x = x1;
        y = y1;
    }
};
typedef std::list PolygonType;
typedef std::list PolygonsType;

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有