0

我已成功将动态库添加到程序中,但是当我尝试将头文件包含在项目的第二个文件中时,我收到有关类重新声明的错误。如果这还不够,我会添加更多信息

4

2 回答 2

5

您需要在标题中添加警卫,这样它就不会被多次包含在内。对于文件“my.h”,您可以添加以下内容:

#ifndef MY_H
#define MY_H

// Header declarations here

#endif

这样,您可以多次包含 .h 文件,但只会在第一次包含该文件。

于 2009-11-11T01:28:56.553 回答
4

#include 将用文件内容替换#include 语句;因此,具有同一文件的多个#include 将多次重新定义元素。典型的方法是像这样的保障措施:

/* file foo .h */
#ifndef _FOO_H
#define _FOO_H

/* content */

#endif
于 2009-11-11T01:29:42.057 回答