C ++类 - 如何从函数返回自定义类型的向量?

时间:2011-05-18 11:47:09

标签: c++ class vector declaration

当我想让函数返回一个我刚刚定义的struct类型的向量时,我在类中设置函数时遇到了问题。编译器提供“使用未声明的标识符”错误。

在.h文件中:(没有给出错误)

struct workingPoint;

public:

vector<workingPoint>calculateWorkingPointCloud();

在.cpp文件中:

struct DeltaKinematics::workingPoint {
    int x, y, z;
    //more stuff to come
};

vector<workingPoint> DeltaKinematics::calculateWorkingPointCloud(){ //error here is "Use of undeclared identifier 'workingPoint'

}

似乎编译器不知道workingPoint是什么,尽管它是在函数之前声明的事实?

2 个答案:

答案 0 :(得分:3)

您定义了结构DeltaKinematics::workingPoint,然后尝试返回结构workingPoint。你需要明确的资格。

答案 1 :(得分:3)

这只是查找的问题。您需要完全限定名称,例如
vector<DeltaKinematics::workingPoint> DeltaKinematics::calculateWorkingPointCloud(){...

我问了一个关于这个问题的类似问题here。也许它对你来说也很有趣。