c++ - C4430 错误 - 缺少类型说明符 - 假定为 int

标签 c++

我正在制作一个数学库(实际上是复制一个并修改它。),但毕竟有一个错误我似乎无法摆脱。找不到类型说明符。
它在我的 Math.h 的第 201 行,即这一行:

     int   Classify(const Polygon &vcPoly);

我真的尝试搜索谷歌,但我没有找到任何东西。对我来说,这不是很明显出了什么问题。
这是 Plane 类的源代码。在 Math 标题中还有 vector 、射线、矩阵和其他一些数学类。 Polygon 类在 Plane 类之后,但我在标题顶部包含了定义。
    class Plane {
  public:
  Vector m_vcN,       // plane normal vector
            m_vcPoint;   // point on plane
  float     m_fD;        // distance to origin

  //---------------------------------------

  Plane(void) { /* nothing to do */ ; }

  inline void  Set(const Vector &vcN, const Vector &vcP);
  inline void  Set(const Vector &vcN, const Vector &vcP, float fD);
  inline void  Set(const Vector &v0,  const Vector &v1, const Vector &v2);
  inline float Distance(const Vector &vcPoint);
         int   Classify(const Polygon &vcPoly);
  inline int   Classify(const Vector &vcPoint);

  bool Clip(const Ray*, float, Ray*, Ray*);

  bool Intersects(const Vector &vc0, const Vector &vc1, 
                  const Vector &vc2);
  bool Intersects(const Plane &plane, Ray *pIntersection);
  bool Intersects(const Aabb &aabb);
  bool Intersects(const Obb &obb);

 }; // class

希望你能帮助我。

最佳答案

好像是类型Polygon不知道在那一行。您是否包含正确的头文件?我的猜测是 Polygon.h (或类似的东西)不见了。

编辑:如果所有类都包含在同一个标​​头中,那么您可能必须确保在需要该类作为类型之前定义该类(使用原型(prototype))。这意味着您可以将类原型(prototype)放在头文件的开头:

// prototype for Polygon
class Polygon;

关于c++ - C4430 错误 - 缺少类型说明符 - 假定为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7173973/

相关文章:

c++ - 有哪些基准测试代码不同版本的选项(以避免膨胀和性能下降)?

c++ - 找不到Xcode C++标准库

c++ - gcc 4.9.2编译错误:AssetLinkData

c++ - C++模板书的建议?

c++ - omp_set_num_threads 始终返回 0,我无法使用 omp_get_thread_num() 获取线程编号

c++ - int 和 char 数组有什么区别?

用于固定大小矩阵和 vector 的 C++ 库

c++ - 为派生类覆盖>>运算符

c++ - 使用双向链表实现 map

c++ - 调试断言仅在某些情况下失败? C++