了解在此实例中使用Class关键字

时间:2014-01-02 18:19:39

标签: c++ vtk

我正在阅读VTK源文件,我注意到一些头文件中的语句如下。

class vtkArray;
class VTKIOCORE_EXPORT vtkArrayWriter : public vtkWriter
{
    //Interface description here.
}

我对'class vtkArray;'这句话感到困惑。这个陈述的含义是什么?它的用途是什么,什么时候是使用它的好时机?

此代码来自头文件。

3 个答案:

答案 0 :(得分:0)

这是在头文件中吗?他们正在宣布班级vtkArray。这样,他们就不需要包含包含该类的头文件。然后他们可以在.cpp文件中包含头文件。

修改:Link to explanation of forward declaration

答案 1 :(得分:0)

这看起来像是前瞻声明。 http://en.wikipedia.org/wiki/Forward_declaration 如果要在定义类之前使用类,则需要它。

答案 2 :(得分:0)

那是forward declaration。它主要用于需要声明类类型而不指定其内部形式。当将指针或引用作为语句处理时,这很有用:

type* x;
type& x;

不要求编译器知道type的大小。