class 클래스명 : public 상속할클래스명 가상함수 자식클래스에는 있는데 부모클래스에는 없는 함수를 가지고 있는척 하게(컴파일되게) 해주는 기능 함수 virtual 자식클래스에 오버라이드 된 함수가 있다면 그걸 컴파일하게 함 부모클래스에 virtual이 붙은 함수를 자식클래스에서 오버라이드해서 사용하려면 뒤에 붙은 함수까지 다 적어야 하고 오버라이드를 했다는것을 알리기 위해 override를 적는다. 순수가상함수 virtual void 함수명() const = 0; 형식 몸체는 없고 선언만 부모클래스에서 해서 누군가 빌드를 해서 몸체가 없다는 오류코드를 확인하면 순수가상함수를 오버라이드하는 자식클래스에서 몸체를 작성하게 하도록 하는 시스템
전체 글
게임개발자 및 그래픽 엔지니어를 목표로 공부하고 있는 학생입니다한줄 주석으로 : 들여쓰기 포함 드래그 Ctrl + K + C 전체 주석으로 : 들여쓰기 미포함 드래그 Ctrl + K + C 주석 해제 : Ctrl + K + U

객체지향의 장점 1. 속성이 조금씩만 다른 결과물들은 하나의 클래스와 그 안에 함수들을 구현해 놓고 매개값만 속성에 따라 바꿔주면 최소한의 코드로 수많은 여러가지 결과물을 만들어낼 수 있다. 2. 속성에 따라 여러가지를 생성할때 멤버함수들로 구분을 해놓았기 때문에 헷갈리지 않는다. 3. 추상적인 개념을 정해놓고(class) 그 개념의 속성들을 가지치기로 기능들(멤버함수)을 분류해 구현할 수 있다.

깃허브에서 소스를 다운받아 예제들을 사용하면서 vs2019를 껏다 다시 키거나 두 번쨰 실행부터는 오류코드가 뜨면서 안되는 경우가 발생했다. 하루 종일 이 문제에 매달리게 되었다... 정말 많은 자료를 찾아본 결과 SDK 버전이 다르거나 플랫폼 도구 버전이 달라서 발생하는 문제였다. 원인은 실행시킨 visual studio의 버전이 소스 파일이 만들어진 visual studio의 버전보다 낮아서 발생하는 것이다. 나는 원래 vs2019를 사용중이었으나 내가 사용한 깃허브의 올라온 자료들은 상위 버전에서 만들어져서 에러가 발생한것 같다. vs2022를 새로 설치하고 프로젝트 솔루션에서 SDK 버전과 플랫폼 도구 버전을 최신으로 해두니 실행이 되었다. vs2019설치 당시 교수님께서 최신 vs는 오류가 많으..
부모클래스에 정의된 멤버함수를 자식쪽에서 재정의하여 자식클래스에서 구현된 기능을 불러서 사용하는걸 오버라이딩이라고 한다.