제목은 초초초 간단이라 써놓고 본인은 원인 파악 못하는 중..


새 프로젝트 만들어서 코딩하는 중

"struct _Client * clientArr" (?clientArr@@3PAU_Client@@A) already defined in BankingSystemVer01.obj

이라는 에러가 떴어요


만든 파일은 

BankingSystemVer01.h  구조체와 함수 및 변수 선언

BankingSystemVer01.cpp 함수 정의

main.cpp 메인함수

이렇게 세개에요


헤더에는 

#ifndef __BANK_H__

#define __BANK_H__

...

typedef sturct _Client

{

...

} Client;


Client clientarr[100];

...

#endif

라는 내용이 들어있고

두 개의 .cpp파일에는

#include "bank.h"

선언을 하였는데,

위 에러가 떠요.


스택오버플로 찾아보니까 헤더의 변수에 extern붙이면 해결된다길래 했더니 해결은 됬는데요,

예전 프로젝트까지는 extern 안붙이고도 저런식으로 헤더에 전역변수 선언해서 써왔는데, 갑자기 뭐가 문제인가요?

예전 파일과 비교해봐도 잘 모르겠어요//