클래스(3)
-
[Visual Studio 2019] 클래스 생성하는 법
클래스 생성하는 법
2024.12.24 -
[C++] 구조체 · 클래스 템플릿으로 리스트 구현
코드를 작성할 때 노드는 구조체로, 리스트는 클래스로 만들었지만, C++에서 클래스와 구조체는 같아졌기 때문에 어떤 것을 사용하든 크게 상관은 없다.구조체도 생성자, 소멸자, 상속이 가능해졌다.단, 클래스와 구조체의 차이점은 범위 지정자의 기본값이 다르다는 것이다.구조체는 public이고 클래스는 private이다. 구조체와 클래스 중 어떤 것을 사용할지 모르겠을 때, 나름의 규칙을 만들면 좋다.ex) 기능이 많지 않을 때(단순히 데이터를 묶어놓고 데이터를 저장하는 등)는 구조체 키워드를, 리스트처럼 컨테이너로써의 복잡한 기능이면 클래스로 선언한다. ※ 구조체 템플릿은 구조체가 아니다.프로그래머는 넣은 데이터가 노드 단위인 것을 알 필요가 없어야 된다.다시 말해서, 리스트에 데이터를 넣을 뿐, 데이터를 ..
2024.03.18 -
[C++] 클래스 (+ 멤버 함수, this 포인터)
아래 링크 클릭 시 해당 본문으로 이동멤버 함수this 포인터클래스(Class)멤버 함수• 클래스가 사용하는 전용 함수 (클래스 내부에 정의된 함수)• 클래스의 객체가 필요하다.멤버 함수를 호출하려면 해당 클래스의 실체화가 되어있는 변수인 객체가 필요하다.• 멤버 함수를 객체를 통해서 호출하면 해당 객체의 주소가 this 포인터로 전달된다.this 포인터클래스의 멤버 함수를 호출 시 호출할 객체(instance, 인스턴스)를 찾으려면 this 포인터를 사용해야 한다.• 생략되어 있지만 모든 멤버 함수에 추가되어 있는 매개 변수로, 해당 멤버 함수를 호출한 객체의 주소를 가리키는 상수 포인터이다.this 포인터에 저장된 주소(현재 객체의 주소)를 수정할 수 없지만, const로 표시되지 않으면 가리키는 개..
2024.03.18