프로그래밍 언어(154)
-
C++ 초급 - 7. 구조체와 클래스 (6 - const 멤버 함수)
📌 7.6 const 멤버 함수C++에서 const 멤버 함수는 객체의 데이터를 변경하지 않도록 보장하는 함수이다.이를 활용하면 코드의 안정성을 높이고, 불필요한 데이터 변경을 방지하여 예측 가능한 설계를 할 수 있다.또한, const 객체에서는 const 멤버 함수만 호출 가능하며, mutable 키워드를 사용하면 특정 멤버 변수만 예외적으로 변경 가능하다.📌 1. const 멤버 함수 선언 및 활용🔹 (1) const 멤버 함수란?멤버 변수 값을 변경하지 않는 멤버 함수.함수 선언 뒤에 const 키워드를 붙이면, 해당 함수는 객체의 멤버 변수를 변경할 수 없음.객체의 상태를 읽기 전용으로 유지하는 함수에 사용.💡 기본 문법class 클래스명 {public: 반환타입 함수명() const..
2025.02.22 -
C++ 초급 - 7. 구조체와 클래스 (5 - this 포인터)
📌 7.5 this 포인터C++에서 this 포인터는 클래스 내부에서 객체 자신을 가리키는 포인터이다.모든 비정적 멤버 함수(Non-static Member Function)는 this 포인터를 암묵적으로 가진다.이를 활용하면 객체 자기 참조, 멤버 변수 충돌 해결, 메서드 체이닝 구현이 가능하다.📌 1. this 포인터 개념 및 활용🔹 (1) this 포인터란?클래스 내부에서 객체 자신을 가리키는 포인터.객체의 주소를 저장하며, 이를 통해 멤버 변수와 지역 변수 충돌을 방지할 수 있다.정적 멤버 함수(Static Member Function)에서는 this 포인터를 사용할 수 없음.💡 예제: this 포인터 활용#include class Example {private: int x;publi..
2025.02.22 -
C++ 초급 - 7. 구조체와 클래스 (4 - 접근 지정자 (private, public, protected))
📌 7.4 접근 지정자 (private, public, protected)접근 지정자(Access Specifier)는 클래스 내부 멤버(변수, 함수)의 접근 권한을 설정하는 키워드이다.C++에서는 private, public, protected 세 가지 접근 지정자를 제공하며, 이를 통해 데이터 보호(Encapsulation) 및 정보 은닉을 구현할 수 있다.📌 1. private, public, protected의 차이점 접근 지정자 접근 가능 범위 사용 목적 public어디서든 접근 가능클래스 외부에서도 접근이 필요한 멤버private클래스 내부에서만 접근 가능데이터 보호 및 캡슐화protected클래스 내부 + 상속받은 클래스에서 접근 가능상속 시 일부 멤버만 보호하면서 공유 가능💡 예제: ..
2025.02.22 -
C++ 초급 - 7. 구조체와 클래스 (3 - 생성자와 소멸자 (Constructor & Destructor))
📌 7.3 생성자와 소멸자 (Constructor & Destructor)클래스에는 객체가 생성될 때 자동으로 호출되는 생성자(Constructor)와 객체가 소멸될 때 호출되는 소멸자(Destructor)가 존재한다.이들은 객체의 초기화 및 메모리 정리 역할을 수행하며, 객체 지향 프로그래밍(OOP)에서 필수적인 개념이다.📌 1. 생성자 개념 및 역할🔹 (1) 생성자란?생성자(Constructor)는 객체가 생성될 때 자동으로 호출되는 함수이다.클래스와 동일한 이름을 가짐.반환값을 가지지 않음 (void조차 사용하지 않음).객체가 생성될 때 자동 실행됨.💡 기본 문법class 클래스이름 {public: 클래스이름(); // 생성자 선언};💡 예제: 기본 생성자#include class ..
2025.02.22 -
C++ 초급 - 7. 구조체와 클래스 (2 - 클래스 (class vs struct))
📌 7.2 클래스 (class vs struct)C++에서는 struct와 class 모두 데이터와 함수를 포함할 수 있는 사용자 정의 자료형이다.하지만 객체 지향 프로그래밍(OOP, Object-Oriented Programming)을 활용하려면 클래스(class)를 사용하는 것이 일반적이다.주요 차이점struct → 기본 접근 지정자(public), 단순한 데이터 저장 목적.class → 기본 접근 지정자(private), 캡슐화 및 OOP 지원.📌 1. struct와 class의 차이점🔹 (1) 기본 접근 지정자 차이💡 예제: struct vs class#include struct StructExample { int x; // 기본 접근 지정자가 public};class ClassEx..
2025.02.22 -
C++ 초급 - 7. 구조체와 클래스 (1 - 구조체 (struct))
📌 7. 구조체와 클래스C++에서 구조체(struct)와 클래스(class)는 사용자 정의 데이터 타입을 만들기 위한 기능이다.구조체는 단순한 데이터 묶음 역할을 하며, 클래스는 객체 지향 프로그래밍(OOP)을 지원한다.이 장에서는 구조체와 클래스의 차이, 생성자와 소멸자, 접근 지정자, this 포인터, const 멤버 함수 등을 학습한다.📌 7.1 구조체 (struct)구조체(struct)는 여러 개의 데이터를 하나로 묶을 수 있는 사용자 정의 자료형이다.C++에서는 구조체 내부에 멤버 변수뿐만 아니라 멤버 함수도 포함할 수 있으며, 클래스(class)와 유사하지만 기본 접근 지정자가 public이라는 차이가 있다.구조체는 보통 단순한 데이터 저장 용도로 사용되며, 객체 지향 프로그래밍(OOP)을..
2025.02.22