반응형

2024/12/19 6

C++ 연산자 오버로딩 (Operator Overloading)

C++은 객체 지향 프로그래밍 언어로, 사용자 정의 타입(클래스)을 정의할 수 있습니다. 이러한 클래스에서 연산자를 사용자 정의 타입에 맞게 동작하도록 오버로딩(overloading)할 수 있습니다. 연산자 오버로딩을 활용하면 직관적이고 간결한 코드를 작성할 수 있으며, 객체 간의 연산을 정의하거나 확장할 수 있습니다.이 글에서는 C++의 연산자 오버로딩에 대해 설명하고, 예제를 통해 이를 구현하는 방법을 알아보겠습니다.연산자 오버로딩이란?연산자 오버로딩은 C++에서 제공하는 연산자를 사용자 정의 클래스에서 사용할 수 있도록 재정의하는 기능입니다. 예를 들어, +, -, *, /, ==와 같은 연산자를 클래스의 동작에 맞게 정의할 수 있습니다.연산자 오버로딩의 특징기존 연산자의 의미 확장: 기존 연산자를..

cpp 2024.12.19

C++ 상속과 다형성

C++에서 객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 코드의 재사용성과 유지보수를 향상시키는 강력한 도구를 제공합니다. 그중에서도 상속(Inheritance)과 다형성(Polymorphism)은 객체 지향 프로그래밍의 핵심적인 개념입니다. 이번 포스팅에서는 상속과 다형성의 개념과 실제 코드 예제를 통해 이를 이해해보겠습니다.1. 상속(Inheritance)상속이란?상속은 기존 클래스를 기반으로 새로운 클래스를 생성하는 방법입니다. 이를 통해 코드의 중복을 줄이고, 기존 코드의 기능을 확장하거나 수정할 수 있습니다. 부모 클래스(Base Class)로부터 자식 클래스(Derived Class)가 모든 속성과 메서드를 물려받습니다.상속의 기본 문법class Base ..

cpp 2024.12.19

C++ 클래스와 객체

C++은 객체 지향 프로그래밍(Object-Oriented Programming, OOP)을 지원하는 대표적인 프로그래밍 언어입니다. 객체 지향 프로그래밍의 핵심 개념 중 하나는 클래스와 객체입니다. 이번 포스팅에서는 클래스와 객체에 대해 알아보고, 이를 사용하는 방법과 예제를 통해 이해를 돕겠습니다.클래스란 무엇인가?클래스(Class)는 객체를 생성하기 위한 청사진(Template) 또는 설계도입니다. 클래스는 데이터(멤버 변수)와 함수(멤버 함수)를 포함할 수 있으며, 이를 통해 데이터를 캡슐화하고 관련 작업을 정의할 수 있습니다.클래스 정의C++에서 클래스는 class 키워드를 사용하여 정의합니다. 클래스는 멤버 변수와 멤버 함수로 구성됩니다.class ClassName {public: // ..

cpp 2024.12.19

C++ 동적 메모리 관리

C++에서 동적 메모리 관리는 메모리를 효율적으로 사용하고 프로그램의 유연성을 높이기 위해 매우 중요한 개념입니다. 이 글에서는 동적 메모리 관리의 기본 개념과 C++에서 제공하는 주요 기능, 그리고 이를 활용하는 방법에 대해 살펴보겠습니다.동적 메모리란?동적 메모리는 프로그램 실행 중에 필요에 따라 할당하거나 해제할 수 있는 메모리입니다. C++에서는 new와 delete 키워드를 사용하여 동적 메모리를 관리할 수 있습니다. 동적 메모리는 보통 힙(Heap) 영역에서 관리되며, 고정된 크기의 스택 메모리와는 달리 유동적으로 사용할 수 있습니다.동적 메모리 할당동적 메모리를 할당하려면 new 키워드를 사용합니다. 예를 들어, 정수형 변수를 동적으로 할당하는 방법은 다음과 같습니다:int* ptr = ne..

cpp 2024.12.19

Kotlin 함수형 프로그래밍

Kotlin 언어는 함수형 프로그래밍의 특징을 적극적으로 지원합니다. 함수형 프로그래밍은 함수를 일급 객체로 취급하여, 함수를 변수에 할당하거나 다른 함수의 인자로 전달할 수 있는 프로그래밍 패러다임입니다. 이번 포스팅에서는 Kotlin에서 함수형 프로그래밍의 기본 개념을 소개하고, 고차 함수와 람다를 사용해 프로그램을 더 유연하게 작성하는 방법을 살펴보겠습니다.함수형 프로그래밍의 특징함수형 프로그래밍의 주요 특징은 다음과 같습니다:일급 함수(First-Class Function): 함수를 변수에 저장하거나 다른 함수의 인자로 전달할 수 있습니다.순수 함수(Pure Function): 같은 입력에 대해 항상 같은 출력을 보장하며, 부작용이 없는 함수입니다.고차 함수(Higher-Order Function..

kotlin 2024.12.19

Singleton Pattern in Java

1. Singleton Pattern의 개념싱글톤 패턴(Singleton Pattern)은 클래스의 인스턴스가 하나만 생성되도록 보장하는 디자인 패턴입니다. 주로 공유된 리소스에 접근하거나, 전역 상태를 관리할 때 사용됩니다.Singleton 패턴의 특징:클래스가 하나의 인스턴스만 가지도록 제한전역 접근점(Global Access Point)을 제공메모리 낭비 방지 및 시스템 자원 절약2. Singleton Pattern의 구현 방법싱글톤 패턴은 다양한 방법으로 구현될 수 있으며, 구현 시 쓰레드 안전성(Thread Safety)을 고려해야 합니다.이른 초기화(Eager Initialization)클래스가 로드될 때 싱글톤 인스턴스를 생성하는 방식입니다.public class Singleton { ..

반응형