访问main中的类数据

时间:2012-12-06 02:03:17

标签: c++ class graph

我有一个图表类:

#ifndef GRAPH_H
#define GRAPH_H

#include<list>
#include<iostream>
#include "global.h"

class Graph_{

std::list<Vertex> vertices;
int vcount;
int ecount;

public:
    void insert_vertex(Vertex vert);
    int routesearch(Graph_ *passed, Vertex *vert,  double distance, double curdistance, double safety, double minsafe, int startID);



};


#endif

然后在我的主要版本中,我尝试访问我声明的图形中的顶点列表,它给了我一个错误:8智能感知:成员“图_ ::顶点”是不可访问的。不知道该怎么做,因为它适用于我所做的其他结构,除了我制作的类外,我做的像Vertex。

 #include "graph.h"
 int main(){
    Vertex dumb;
    Graph_ map;
    map.vertices.push_back(dumb);

}

1 个答案:

答案 0 :(得分:2)

  

它适用于我制作的所有其他结构

struct具有public默认访问级别。 class没有。如果您想要访问该成员,请成员public

class Graph_{
//these two are private, because a class has private access level by default
    int vcount;
    int ecount;
public: // <<<--- public here
    std::list<Vertex> vertices;
public:
    void insert_vertex(Vertex vert);
    int routesearch(Graph_ *passed, Vertex *vert,  double distance, double curdistance, double safety, double minsafe, int startID);



};