>백엔드 개발 >C++ >Visual Studio에서 \'확인되지 않은 외부 기호\' 오류가 발생하는 이유는 무엇입니까?

Visual Studio에서 \'확인되지 않은 외부 기호\' 오류가 발생하는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-25 04:41:02784검색

Why Am I Getting an

해결되지 않은 외부 기호: Visual Studio의 일반적인 오류

Visual Studio에서 코딩하는 동안 해결되지 않은 외부 기호 오류가 발생하면 실망스러울 수 있습니다. 이는 컴파일러가 코드에서 참조된 함수 또는 변수의 정의를 찾을 수 없음을 나타냅니다. 이 문제에 접근하는 방법은 다음과 같습니다.

해결되지 않은 외부 기호의 원인

이 오류는 일반적으로 다음과 같은 경우에 발생합니다.

  • 함수 또는 변수가 프로젝트에서 해당 정의 없이 선언되었습니다.
  • 정의가 있지만 include 지시어 또는 라이브러리 종속성 누락으로 인해 컴파일러에서 찾을 수 없습니다.

문제 식별

누락된 정의를 식별하려면 오류 메시지를 주의 깊게 살펴보세요. 해결되지 않은 기호와 참조 기능을 지정합니다. 이렇게 하면 정의가 아닌 선언이 포함된 소스 파일을 가리킬 수 있습니다.

문제 해결

  1. 함수 정의 확인: 문제의 함수나 변수가 해당 소스 파일(.cpp)에 올바르게 정의되어 있는지 확인하세요. 세미콜론(;)으로 끝나지만 본문(괄호 {}) 또는 클래스 범위(A::)가 누락된 정의를 찾습니다.
  2. Include 지시문 확인: 헤더가 선언이 포함된 파일(.h)은 기호가 사용되는 소스 파일(.cpp)에 포함됩니다.
  3. 외부 라이브러리 링크: 프로젝트에서 정의를 찾을 수 없는 경우 , 외부 라이브러리에 정의되어 있는지 확인하세요. 필요한 라이브러리 종속성을 추가하고 프로젝트 설정에서 라이브러리에 연결합니다.
  4. 프로젝트 재구축: 누락된 정의가 해결되면 프로젝트를 재구축하여 컴파일러가 필요한 모든 정의를 찾을 수 있도록 합니다. 기호.

다음 오류가 발생했다고 가정해 보겠습니다.

error LNK2019: unresolved external symbol "void myClass::myFunction()"

이는 myFunction 함수가 myClass 클래스는 정의되어 있지 않습니다. 이 문제를 해결하려면 해당 소스 파일에

void myClass::myFunction()
{
  // Function body
}

과 같은 정의가 있고 myFunction을 사용하는 소스 파일에 필요한 헤더 파일이 포함되어 있는지 확인하세요.

위 내용은 Visual Studio에서 \'확인되지 않은 외부 기호\' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.