우선이 정보가 정확하지 않다는 것을 알고 있습니다. 그러나, 나는 물건을 테스트하고 싶습니다. 그리고 헤더 파일에 전역 변수를 만들고 main.cpp 파일에서 extern을 선언하면 사용할 수 있습니다. (이 클래스에는 클래스를 포함하지 않았습니다. 헤더). 그러나 실제로 클래스 헤더를 포함하는 유일한 차이점을 찾으려고하면 오류가 발생합니다.헤더 파일에 정의 된 전역 변수 사용하기
(error: ld returned 1 exit status).
왜 이런 일이 발생합니까? 요청에 따라
코드 :
하여 Main.cpp :
#include <iostream>
#include "albino.h"
using namespace std;
extern int iVar;
int main()
{
cout << iVar << endl;
}
albino.h :
#ifndef ALBINO_H
#define ALBINO_H
int iVar = 10;
class albino
{
public:
albino();
};
#endif // ALBINO_H
albino.cpp 나던 아무것도.
ERROR: ||error: ld returned 1 exit status|
코드에 오류 메시지를 넣으십시오. –
[최소, 완료 및 확인 가능한 예제] (http://stackoverflow.com/help/mcve)를 게시하지 않으시겠습니까? 왜 원시 파일에 글래블을 작성하고 헤더 파일에 extern으로 선언할까요? – MikeCAT
@RichardCritten done. – cobzz