我正在C代码的顶部编写MFC,在从c代码中获取lib & include文件之后,我得到了下面提到的许多变量的重新定义错误-
error C2011: 'fd_set' : 'struct' type redefinition
error C2011: 'timeval' : 'struct' type redefinition
error C2011: 'hostent' : 'struct' type redefinition
error C2011: 'netent' : 'struct' type redefinition
error C2011: 'servent' : 'struct' type redefinition
error C2011: 'protoent' : 'struct' type redefinition还有更多..。
它与代码无关,因为它工作正常,所以在合并配置方面我需要一些帮助。我所做的--我创建了一个新的MFC项目+解决方案,在其中添加了一个对话框,构建了它--工作得很好;现在我在上面的解决方案中添加了一个现有的C项目,为添加的C项目配置了MFC项目。在配置中,我已经给出了所有必需的Lib &包括路径。现在,从MFC代码中,我试图包含C代码文件&它给了我上面提到的错误。
是我漏掉了什么还是我错加了什么?
请帮我解决这个问题。
谢谢。
发布于 2014-07-19 11:37:17
#pragma once添加到所有.h文件的顶部。main.cpp包括head1.h和head2.h,而head1.h和head2.h都包含一个常见的头(比如utils.h ),那么它会导致这样的重新定义问题。如果有,请检查并取消此类事件。https://stackoverflow.com/questions/24830142
复制相似问题