다음을 통해 공유


컴파일러 오류 C2352

'class::function': 비정적 멤버 함수를 잘못 호출했습니다.

비고

static 멤버 함수가 비정적 멤버 함수를 호출했습니다. 또는 비정적 멤버 함수가 클래스 외부에서 정적 함수로 호출되었습니다.

예시

다음 예제에서는 C2352를 생성하고 이를 해결하는 방법을 보여 줍니다.

// C2352.cpp
// compile with: /c
class CMyClass {
public:
   static void func1();
   void func2();
   static void func3() {
      func2();   // C2352 calls nonstatic func2
      func1();   // OK calls static func1
   }
};

다음 예제에서는 C2352를 생성하고 이를 해결하는 방법을 보여 줍니다.

// C2352b.cpp
class MyClass {
public:
   void MyFunc() {}
   static void MyFunc2() {}
};

int main() {
   MyClass::MyFunc();   // C2352
   MyClass::MyFunc2();   // OK
}