• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

link error가 나는데 이유를 모르겠습니다.

22.09.11 17:49 작성 조회수 126

0

<EX.cpp>

main.jpg

 

<main.cpp>

EX.cpp.jpg

 

이렇게 하고 하는데 링커 에러가 납니다.

근데 EX.cpp 내용을 똑같이 헤더에 넣으면 또 돌아갑니다.

헤더파일에 #pragma once가 선언되어있어서 되나 싶긴 한데, 또 그렇다기에는 EX.cpp에서 중복으로 선언되는 부분은 없는 것 같아서 어디서 문제가 발생한건지 잘 모르겠습니다...

답변 1

답변을 작성해보세요.

0

강민철님의 프로필

강민철

2022.09.13

안녕하세요,

#include "EX.cpp"를 지워주세요

 

EX.cpp는 링커가 알아서 연결해줍니다.

가령 아래 코드는 알아서 잘 동작합니다.

 

#include <iostream>
#define LIKEAPPLE

void apple() {
#ifdef LIKEAPPLE
	std::cout << "GOOD" << std::endl;
#else
	std::cout << "BAD" << std::endl;
#endif
}

 

#include <iostream>

void apple();

int main() {
    apple();
    return 0;
}