-1

可能重复:
C++ - 前向声明

所以在我的头文件中,我定义/声明了一个类,其中包含名为User的所有功能

然后在 .cpp 源文件中靠近顶部class User;

我是 c 新手,但在我查看的几个教程中找不到答案,所以来到这里

它有什么作用 ?

谢谢你。

4

3 回答 3

2

它被称为前向声明,使编译器能够识别该类,而无需实际了解其内部结构。您只需通知编译器存在这样的类,并且声明指向它的指针不会引发错误。

另一种方法是包含声明该类的相应头文件,但如果您只需要指向该类型的指针,那将太重了。

于 2012-10-16T08:20:09.083 回答
1

它是所谓的“前向声明”:它使编译器知道该类,而无需实际定义它。请注意,这是 C++,而不是 C。

于 2012-10-16T08:20:26.063 回答
0

声明类而不实际定义它。从这个意义上说,它没有什么不同:

void doSomething(void);

该原型告诉编译器doSomething()存在,但实际上并没有指定它的作用。

它通常用于您需要该类存在的地方(因此您可以以某种方式引用它)但您不需要了解它的任何属性。

于 2012-10-16T08:24:00.837 回答