一个不常见的错误,源于不规范的写法。

版权声明:本文为CSDN博主「清河两岸」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36038987/article/details/77747507

————————————————

在讲述柔性数组成员之前,首先要介绍一下不完整类型(incomplete type)。不完整类型是这样一种类型,它缺乏足够的信息例如长度去描述一个完整的对象。

incomplete types (types that describe objects but lack information needed to determine their sizes).

前向声明就是一种常用的不完整类型。

**C++错误–不允许使用不完整的类类型– **

在一个文件中定义了一个类CLASS A,在另一个文件中使用时说不允许使用不完整的类型。使用方法如下:

1
2
3
4
5
6
CLASS  A;

CLASS B{
public:
A *point;
};

分析问题:使用该类的文件看不到该类。

解决问题:将类的定义放到.h头文件中,在使用该类的文件中#include该头文件。