[C++ ERROR] LNK2001 error

2020. 6. 18. 05:33·Computer Science/기타 error

error LNK2001 : "~~" 외부기호를 확인할 수 없습니다. 

에러 이유: 클래스 내부에 static 변수를 선언 -> 해당 static 변수를 찾을 수 없을 때 발생

즉, static 변수를 클래스 내부에 선언하고 생성자 내에서 초기화 해 줄 때 객체가 생성될 때마다 리셋기 때문에 에러가 발생함 

 

<에러 코드- 예시>

// A.h
class A{
private:
	static int a;
public:
	A();
}

//A.cpp
A::A(){
	a=10;
}

 

<해결 방법>

int A::a=10;을 해주어야한다.

// A.h
class A{
private:
	static int a;
public:
	A();
}

//A.cpp

int A::a=10;	//수정부분

A::A(){
	a=10;
}

 

<cf>

static 변수는 전역변수의 성질도 갖고있기 때문에 main()함수 실행하기 전에 할당됨

 

저작자표시 비영리 변경금지 (새창열림)

'Computer Science > 기타 error' 카테고리의 다른 글

[SQL] Query OK, 0 rows affected, 1 warning  (0) 2020.08.07
[SQL] Error 1064(42000) SQL Syntax ERROR  (0) 2020.08.07
[Node.js] cmd창에서 error (events.js:숫자 throw er)  (0) 2020.08.02
[백준] 런타임 에러  (0) 2020.07.30
[JAVA ERROR] cmd 창에서 나타나는 에러  (0) 2020.06.07
'Computer Science/기타 error' 카테고리의 다른 글
  • [SQL] Error 1064(42000) SQL Syntax ERROR
  • [Node.js] cmd창에서 error (events.js:숫자 throw er)
  • [백준] 런타임 에러
  • [JAVA ERROR] cmd 창에서 나타나는 에러
BS Kwak
BS Kwak
  • BS Kwak
    Slow but steady wins the race
    BS Kwak
  • 전체
    오늘
    어제
    • 카테고리 (161)
      • Project (2)
      • Next.js (3)
      • HTML+CSS+JS (17)
      • Computer Science (139)
        • Programming Language (52)
        • 자료구조와 알고리즘 (75)
        • Digital circuit (3)
        • 기타 error (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    런타임 에러
    leetcode
    오블완
    cmd error
    티스토리챌린지
    c++error
    mysql error
    LNK2001
    해시
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
BS Kwak
[C++ ERROR] LNK2001 error
상단으로

티스토리툴바