这个前瞻性声明有什么问题

时间:2011-04-22 16:43:26

标签: c++ qt forward-declaration

我曾多次用疙瘩成语来缩短编译时间。为了得到一个“好”的头文件,我返回一个包含QPoint(一个Qt对象)指针的向量指针。

让我们看一下我的头文件:

#ifndef CHEXAGON_H
#define CHEXAGON_H

class QPoint;
class QVector;

class CHexagon
{
public:
    CHexagon(const unsigned int & PosX, const unsigned int & PosY, const unsigned int & Radius);
    QVector * getEdges();
    QPoint * getCenter();
private:
    class Pimple;
    Pimple * pPimple;
};

#endif // CHEXAGON_H

它有什么不对吗?

2 个答案:

答案 0 :(得分:5)

QVector不是一个类,它是一个类模板,不能像你那样声明。

template <typename T> QVector;

然后使用QVector<QPoint*>应该做你想做的事。

答案 1 :(得分:2)

Nothing.

是什么让你认为它有问题?