Mach-O Linker错误复制符号_INIT_NAME in

时间:2012-03-27 14:39:38

标签: c const constants

我的项目中有一些常量,我想导入几个类文件。当我将import语句添加到一个时,我得到了这个错误。我听说过,因为香港专业教育学院进口了两次或者别的什么,但我没看到在哪里或如何。有没有找到错误的好方法?

Definitions.h:

const char INIT_NAME = 'A';
const char INIT_ME = 'B';
const char INIT_PLAYER = 'C';
const char ROUND_DATA = 'D';
const char SERVER_IS_FULL = 'E';
const char START_GAME = 'F';
const char START_COUNTDOWN = 'G';
const char READY_1 = 'H';
const char READY_2 = 'I';
const char DROP_PLAYER = 'J';
const char INITIATE_NEW_ROUND = 'K';

const char RIGHT_TURN = 'L';
const char LEFT_TURN = 'M';
const char STOP_TURN = 'N';
const char KILL_PLAYER = 'O';

DataCoder.h

#import "Definitions.h"

Client.h

#import "DataCoder.h"

Server.h

#import "DataCoder.h"

当我将导入添加到datacoder.h时,我收到错误。 请帮忙!

1 个答案:

答案 0 :(得分:1)

您需要发布实际错误。

此外,在头文件中,通常使用标头防护来防止重新定义符号。例如:

#ifndef MY_HEADER_FILE_NAME_H
#define MY_HEADER_FILE_NAME_H

const char INIT_NAME='A';
/* snip */
const char KILL_PLAYER='O';

#endif /* MY_HEADER_FILE_NAME_H */