다음을 통해 공유


컴파일러 오류 C2079

'identifier'는 정의되지 않은 클래스/구조체/공용 구조체 'name'을 사용합니다.

지정된 식별자는 정의되지 않은 클래스, 구조체 또는 공용 구조체입니다.

이 오류는 익명 공용 구조체를 초기화하여 발생할 수 있습니다.

다음 샘플에서는 C2079를 생성합니다.

// C2079.cpp
// compile with: /EHsc
#include <iostream>
int main() {
   std::ifstream g;   // C2079
}

해결 방법:

// C2079b.cpp
// compile with: /EHsc
#include <fstream>
int main( ) {
   std::ifstream g;
}

C2079는 정방향 선언이 범위에만 있는 형식의 스택에서 개체를 선언하려는 경우에도 발생할 수 있습니다.

// C2079c.cpp
class A;

class B {
   A a;   // C2079
};

class A {};

해결 방법:

// C2079d.cpp
// compile with: /c
class A;
class C {};

class B {
   A * a;
   C c;
};

class A {};