제 목 비쥬얼 2019 쓰고있는데요.
작성자 08 등록날짜 2022-08-10 13:52:58 / 조회수 : 44
강좌명 [단과] 즐거운 윈도우 API
첨부파일
  • 1. 클래스 파일 생성시

    강의를 보면 자동으로 생성자, 소멸자가 작성된 상태로 파일이 생성되는데

    저는 클래스만 생성되고 클래스 내부 함수는 따로 선언된게 없는 상태더라구여.

    그래서 직접 생성자, 소멸자도 작성해서 강의들어왔는데 궁금해서 여쭤봐여.

    검색해봐도 2019 버전에서는 자동선언이 안되는데 왜 그러는지에 대한 질문만있고 명확한 답변은 없어서요.

    설정을 따로 해줘야하는건가여?

    아님 2019에는 선언안해줘도 알아서 호출되는거니까 생성자 소멸자에서 꼭 필요로 하는 부분이 있을때만 명시적으로 적어서 사용하도록

    변경된건지 궁금하네요. ㅎ

     

    2. 아 그리고 api의 경우 버전이 달라서 그런지 stdafx 대신 framework.h로 생성이 되더라구여.

      근데 여기서도 궁금한점이

      강의를 보면 클래스 생성하면 해당 클래스 cpp에 자동으로 stdafx가 include가 되어있던데

      이건 따로 설정을 해야하는거 같은데 혹시 어디서 해야하는걸까요?

      저는 자동으로 안되서 클래스 생성 후 framework.h가 필요한 cpp 파일엔 직접 include로 framework.h를 입력하고 있습니다.

      그리고 강의를 보면 부모 클래스인 GameNode.h나 각각의 자식클래스 헤더파일에 stdafx.h가 인클루드가 안되어있는데 어떻게 자식

        클래스들이 stdafx.h에 정의된 매크로를 사용할 수 있는지 궁금합니다. ㅠ

     

    3. 7강 진행하다가 문제가 있는데 도저히 해결이 안돼서 파일 함께 첨부합니다. ㅠ

    그냥 무시하고 하면 진행되긴하는데 뭐가 문제인지를 모르겠네요. 검색해보면 헤더파일 읽을때 뭔가 꼬인거같은데..

    무시하고 실행하면 프레임워크 구성처럼 클래스에 옮긴대로 적용이 안된 상태인것같은..

     

  • 작성자 : 게임클래스 / 등록날짜 : 2022-08-10 16:31:49
  • 안녕하세요 게임클래스 입니다.

    1. 생성자 소멸자의 경우 2017, 2019에 따른 버전에 대한 문제가 아닌, 

    소프트웨어 버전업그레이드, 즉 VS자체에 대한 버전업 이슈로 파악하고 있습니다.

    혹시나 싶어 2017버전, 2019버전에 대해서 전부다 클래스를 생성하고 확인해 보았으나

    똑같이 생성자, 소멸자가 자동으로 생성되지 않는부분을 확인하였습니다.

     

    강의를 수강하시는데 있어 불편함을 드려 대단히 죄송하며,

    추가 강의 부분을 재 촬영하여 빠른시일 내에 업로드 할 수 있도록 하겠습니다.

     

    질문에서 문의 주셨듯이 직접 생성자와 소멸자를 생성하셔서 사용하셔도 전혀 상관이 없습니다.

     

    2. sfdafx는 미리 컴파일된 헤더로 프로젝트 속성에서 사용가능 하게 설정을 해두어야 합니다

    stdafx.h 란 자주 쓰이는 헤더들 여러 개를 한꺼번에 미리 컴파일 해서 
    다시 컴파일하지 않고 다시 쓰겠다는 헤더이며 확장자는 *.pch 입니다.
    기본적으로 설정되어 있는 미리 컴파일된 헤더의 디폴트 네이밍이 stdafx입니다.

    프로젝트 속성에서 해당 파일명은 변경이 가능합니다.

    프로젝트의 크기가 커지고 헤더들의 크기가 커지거나 숫자가 많아지면 써야할 필요가 있지만 지금 단계에서는
    그렇게 신경쓰지않으셔도 괜찮습니다.

    프로젝트 속성에서 미리 컴파일된 헤더의 사용을 사용하게 설정해 주어야하며.

    클래스위자드로 생성하는 경우 기본으로 stdafx.h가 Include 되어 있는데, 여기서 stdio.h를 Include 하면 중복이 되거나 헤더가 엉키는 현상이 발생해서 Unexpected File End 가 발생하게 됩니다. 따라서 stdafx.h 를 사용할 때는 모든 cpp 파일이 이를 Include하게끔 구조를 잡는것이 필요하다고 할 수 있습니다.

    3. 첨부된 파일이 확인이 되지 않아 확인을 못하였습니다.

    hiw1985@sgaedu.co.kr 로 파일을 보내주시면 확인 후 추가 답변으로 안내해 드리도록 하겠습니다.