我正在尝试使用在运行时确定的大小的数组创建一个类。但是,当我尝试在“addToSet”函数中访问该数组时,我收到“未声明的标识符错误”。任何帮助,将不胜感激。我是C ++的新手。
标题文件:
class ShortestPathSet
{
private:
//Variables
int *pathSet;
public:
//Variables
int size;
//Constructor
ShortestPathSet(int numVertices);
//Functions
void addToSet(int vertice, int distance);
};
班级档案:
#include "ShortestPathSet.h"
using namespace std;
ShortestPathSet::ShortestPathSet(int numVertices)
{
size = numVertices;
pathSet = new int[numVertices];
}
void addToSet(int vertice, int distance)
{
pathSet[vertice] = distance;
}
答案 0 :(得分:2)
您在这里错过了班级名称:
void addToSet(int vertice, int distance)
你的意思是:
void ShortestPathSet::addToSet(int vertice, int distance)
^^^^^^^^^^^^^^^^^
按原样,您正在声明并定义一个完全不相关的函数,并且在该函数的范围内没有这样的变量pathSet
- 因此未声明的标识符。
旁注,您可能不想让size
成为公共成员变量。