본문 바로가기

C++ 클래스2

[ C++ ] 가상함수와 추상클래스 가상 함수(virtual function) virtual 키워드로 선언된 멤버 함수이다. virtual 키워드의 의미는 아래와 같다. - 동적 바인딩 지시어 - 컴파일러에게 함수에 대한 호출 바인딩을 실행 시간까지 미루도록 지시하는 역할을 한다. 함수 오버라이딩(function overriding) 파생 클래스에서 기본 클래스의 가상 함수와 동일한 이름의 함수 선언 - 기본 클래스의 가상함수의 존재감을 상실시킨다. - 파생 클래스에서 오버라이딩한 함수가 호출되도록 동적 바인딩 - 함수 재정의라고도 부른다. - 다형성의 한 종류이다. 오버로딩 : 같은 클래스 내에서 이름이 같은 것. 추상 클래스 추상 클래스를 얘기하기 전에, 순수 가상함수를 먼저 설명해보겠다. 순수 가상 함수 함수의 코드가 없고, 선언만 .. 2021. 5. 26.
[ C++ ] C++ 객체란? | 클래스 만들기 | 생성자 & 소멸자 | 인라인(inline) 함수 세상의 모든 것은 객체이다 TV, 의자, 책, 집, 카메라, 컴퓨터등... 모든 것은 객체이다. 객체는 캡슐화된다 캡슐화란? 객체의 본질적인 특성 객체를 캡슐로 싸서 그 내부를 보호하고 볼 수 없게 한다. 객체는 상태(state)와 행동(behavior)으로 구성된다 TV 객체 사례 상태 on/off 속성, 채널, 음량 행동 켜기, 끄기, 음량 줄이기, 채널 변경하기 C++ 클래스와 C++ 객체 클래스 객체를 만들어내기 위해 정의된 설계도, 틀 클래스는 객체가 아니다. 실체도 아니다. 클래스 내부에는 멤버변수와 멤버 함수를 선언할 수 있다. 객체 객체는 생성될 때 클래스의 모양을 그대로 가지고 탄생된다. 멤버변수와 멤버함수로 구성한다. 메모리에 생성되어 실체(instance)라고도 부른다. 하나의 클래스.. 2021. 3. 23.