본문 바로가기

GD's IT Lectures : 기초부터 시리즈/C, C++ 기초부터 ~33

[C/C++ 프로그래밍 : 중급] 3. 생성자와 소멸자 Chapter 3. 생성자와 소멸자 객체의 생명주기에 필수적인 이 두 기능을 이해하면, 메모리 관리를 효과적으로 할 수 있습니다. 즉, 이는 안정성과 성능을 위해 필수적인 개념입니다. 이 장에서는 생성자와 소멸자의 기본 구조부터 동적 메모리 관리에 대한 설명과 예제를 통한 사용법을 배웁니다. [Chapter 3. 생성자와 소멸자] 3.1. 생성자와 소멸자 이해하기 3.1.1. 생성자란 무엇인가 3.1.2. 소멸자란 무엇인가 3.1.3. 생성자와 소멸자의 역할 3.2. 생성자의 선언과 구현 3.2.1. 기본 생성자와 매개변수가 있는 생성자 3.2.2. 복사 생성자 3.2.3. 위임 생성자 3.3. 소멸자의 선언과 구현 3.3.1. 소멸자의 기본 구조 3.3.2. 소멸자에서의 메모리 해제 3.4. 생성자와 .. 2023. 5. 17.
[C/C++ 프로그래밍 : 중급] 2. 클래스와 객체 Chapter 2. 클래스와 객체 클래스와 객체는 C++과 같은 객체 지향 언어에서 중요한 역할을 합니다. 이를 통해 개발자들은 효율적이고 가독성 높은 코드를 작성하는 데 도움을 받게 됩니다. 다양한 예제와 함께 이해를 돕고, 이론과 실제가 어떻게 연결되는지 보여드릴 것입니다. [Chapter 2. 클래스와 객체] 2.1. 클래스와 객체 이해하기 2.1.1. 클래스의 정의와 구조 2.1.2. 객체란 무엇인가 2.1.3. 클래스와 객체의 관계 2.2. 클래스 선언과 구현 2.2.1. 클래스 선언의 기본 구조 2.2.2. 멤버 변수와 멤버 함수 2.2.3. 클래스의 생성과 소멸: 생성자와 소멸자 2.2.4. 객체 생성과 메모리 할당 2.3. 클래스의 접근 지시자 2.3.1. public, private, p.. 2023. 5. 16.
[C/C++ 프로그래밍 : 중급] 1. 객체 지향 프로그래밍의 개념 Chapter 1. 객체 지향 프로그래밍의 개념 객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 프로그래밍 패러다임 중 하나로, 복잡한 문제를 해결하기 위해 '객체'라는 개념을 중심으로 설계합니다. 이 챕터에서는 OOP의 기본 개념과 역사, 주요 구성 요소(클래스, 객체, 메서드, 상속, 다형성, 캡슐화)를 소개하며, OOP가 코드의 재사용성, 유지보수성, 안정성에 어떻게 기여하는지를 설명합니다. 또한 C++에서 OOP를 어떻게 구현하는지에 대한 예제를 제공하며, 효과적인 객체 지향 설계를 위한 SOLID 원칙을 소개합니다. 이 챕터를 통해 독자는 OOP의 핵심 개념을 이해하고 C++에서 이를 적용하는 방법을 배울 수 있습니다. [Chapter 1. 객체 지향 프로그래.. 2023. 5. 16.
[C/C++ 프로그래밍 : 중급] C/C++ 중급과정 소개 C/C++ 중급과정 소개 [C/C++ 중급과정] Chapter 1. 객체 지향 프로그래밍의 개념 Chapter 2. 클래스와 객체 Chapter 3. 생성자와 소멸자 Chapter 4. 접근 제어 지시자 Chapter 5. 상속 Chapter 6. 다형성 Chapter 7. 가상 함수와 추상 클래스 Chapter 8. 예외 처리와 오류 처리 Chapter 9. STL 컨테이너 Chapter 10. STL 알고리즘 Chapter 11. 스마트 포인터 Chapter 12. 람다 표현식 Chapter 13. 스레드 Chapter 14. 네트워크 프로그래밍 Chapter 15. GUI 프로그래밍 Chapter 1. 객체 지향 프로그래밍의 개념 객체 지향 프로그래밍은 현대 소프트웨어 개발의 핵심 패러다임입니다. .. 2023. 5. 16.
[C/C++ 프로그래밍] 15. 메모리 동적 할당 Chapter 15. 메모리 동적 할당 메모리 동적 할당(dynamic memory allocation)은 C/C++ 프로그래밍에서 매우 중요한 주제입니다. 이는 실행 시간 동안 프로그램이 필요한 만큼의 메모리를 요청하고 해제할 수 있게 해주는 메커니즘입니다. C언어에서는 'malloc', 'calloc', 'realloc' 및 'free' 함수를 사용하여 동적 메모리를 할당하고 해제합니다. 'malloc'은 지정된 크기의 메모리 블록을 할당하고, 'calloc'은 지정된 크기의 메모리 블록을 할당한 후 0으로 초기화합니다. 'realloc'은 이미 할당된 메모리 블록의 크기를 변경하고, 'free'는 할당된 메모리를 해제합니다. 반면, C++에서는 'new'와 'delete' 연산자를 사용하여 메모리를.. 2023. 5. 16.
[C/C++ 프로그래밍] 14. 예외 처리 Chapter 14. 예외 처리 C/C++에서 예외 처리는 프로그램에서 예기치 않은 이벤트나 오류가 발생했을 때 이를 효과적으로 처리하는 방법을 말합니다. 이런 오류들은 파일을 열 수 없거나, 메모리를 할당할 수 없는 경우 등 다양한 상황에서 발생할 수 있습니다. C 언어는 내장된 예외처리 메커니즘이 없기 때문에, 일반적으로 오류코드를 반환하거나 전역 오류 변수인 'errno'를 설정하여 오류를 처리합니다. 반면에 C++에서는 'try', 'catch', 'throw' 키워드를 사용하여 예외를 던지고, 이를 잡아내는 구조화된 방식의 예외 처리를 지원합니다. 이를 통해 예외가 발생하면 적절한 처리를 수행하거나, 프로그램을 안전하게 종료할 수 있습니다. 이렇게 예외 처리를 통해 프로그램의 안정성과 신뢰성을 .. 2023. 5. 16.