开发者

C compile error

开发者 https://www.devze.com 2023-02-22 11:16 出处:网络
What does the following error mean when compiling. Tilemap.h:21: error: conflicting types for ‘ThreeDWorld’

What does the following error mean when compiling.

Tilemap.h:21: error: conflicting types for ‘ThreeDWorld’
Tilemap.h:21: error: previous declaration of ‘ThreeDWorld’ was here
Tilemap.h:29: error: conflicting types for ‘CGPoint’
Tilemap.h:29: error: pre开发者_运维百科vious declaration of ‘CGPoint’ was here
Tilemap.h:31: error: conflicting types for ‘tileForCoordinates’
Tilemap.h:31: error: previous declaration of ‘tileForCoordinates’ was here

Why is it giving an error for what was there?My source file has one instance of it as such

typedef struct
{
int xPosition;
int yPosition;
} 
CGPoint;


Are you including the header file from more than one place? Use a guard in the header file, if so.

For example, in Tilemap.h:

 #ifndef TILEMAP_H
 #define TILEMAP_H

 // header file contents

 #endif /* TILEMAP_H */


Stick some inclusion guards on your headers.

Your type definition is appearing more than once in your compilation unit.


You included the header file twice.

In my own code, I wrapped all header files with

#ifndef HEADER_FILE_NAME
#define HEADER_FILE_NAME

#endif

to avoid such errors.

0

精彩评论

暂无评论...
验证码 换一张
取 消