728x90

Application/기초 46

[기초] C++ 유니언 (UNION)

C++ 프로그래밍에서 'union'은 여러 타입의 데이터를 하나의 메모리 위치에 저장할 수 있게 해주는 데이터 구조입니다.이 특성은 여러 다른 형태의 데이터를 같은 메모리 공간에 저장하여 메모리를 효율적으로 사용할 수 있도록 합니다.'union'은 주로 시스템 프로그래밍, 장치 드라이버 개발, 네트워크 통신 등에서 데이터를 다룰 때 유용하게 사용됩니다.  기본 구조 유니언을 정의하는 기본 구조는 다음과 같습니다. union MyUnion { int intValue; float floatValue; char charValue;}; 위 예제에서 'MyUnion'이라는 유니언은 'int', 'float', 'char' 타입의 데이터를 저장할 수 있습니다.유니..

Application/기초 2024.04.23

[기초] C++ 인라인 함수 (Inline Function)

인라인 함수를 사용하는 C++ 예제를 보여 드리겠습니다.이 예제에서는 간단한 산술 연산을 수행하는 인라인 함수를 정의하고,이를 사용하여 결과를 출력합니다.인라인 함수는 함수의 본문이 매우 간단할 때 유용하게 사용할 수 있으며,함수 호출에 따른 오버헤드를 줄일 수 있습니다.  #include // 인라인 함수 선언 및 정의: 두 수를 더하는 함수inline int add(int x, int y) { return x + y;}// 인라인 함수 선언 및 정의: 두 수를 곱하는 함수inline int multiply(int x, int y) { return x * y;}// 인라인 함수 선언 및 정의: 두 수 중 최대값을 반환하는 함수inline int ma..

Application/기초 2024.04.22

[기초] C++ 예외 처리

C++에서 예외 처리는 프로그램 실행 중에 발생할 수 있는 예상치 못한 상황에 대비하는 중요한 기술입니다.예외 처리는 프로그램의 안정성과 신뢰성을 높이는 데 도움이 되며,오류를 효율적으로 관리하고 처리할 수 있도록 합니다.이러한 예외 처리는 'try', 'catch', 'throw' 키워드를 사용하여 구현됩니다.  예외 발생과 처리 예외는 프로그램 실행 중에 발생할 수 있는 문제를 나타냅니다.이 문제는 런타임 중에 예상되지 않은 동작이거나 오류 상황일 수 있습니다.예를 들어, 배열의 인덱스가 범위를 벗어나거나 파일을 열 때 파일이 존재하지 않는 경우 등이 있습니다. 'try', 'catch' 블록 C++에서 예외를 처리하기 위해 'try', 'catch' 블록을 사용합니다..

Application/기초 2024.04.15

[기초] C++ 가상 함수와 다형성

C++에서 가상 함수와 다형성은 객체 지향 프로그래밍의 핵심 원리 중 하나입니다. 이는 객체 지향 프로그래밍의 중요한 특징 중 하나로, 코드의 재사용성과 유지보수성을 향상시키는 데 기여합니다. 가상 함수 (Virtual Functions) 가상 함수는 파생 클래스에서 기본 클래스의 동일한 함수를 오버라이딩할 수 있도록 하는 메커니즘입니다. 이를 통해 상속 관계에서 다양한 객체들이 동일한 함수 호출 시 실제로 어떤 함수를 호출할지를 결정할 수 있습니다. 가상 함수를 정의하기 위해서는 기본 클래스의 멤버 함수 앞에 'virtual' 키워드를 사용합니다. 파생 클래스에서 이 함수를 재정의할 때에는 'override' 키워드를 사용하여 오버라이딩한다는 것을 명시합니다. class Base { public: vi..

Application/기초 2024.04.12

[기초] C++ 생성자와 소멸자 (new, delete)

C++에서 생성자와 소멸자는 객체의 초기화와 정리 작업에 중요한 역할을 합니다. 또한, 'new'와 'delete' 연산자는 동적으로 메모리를 할당하고 해제하는 데 사용됩니다. 이러한 요소들을 함께 다루는 것은 C++ 프로그래밍에서 중요한 부분입니다. 생성자와 소멸자 생성자는 객체가 생성될 때 호출되며, 멤버 변수를 초기화하거나 다른 초기화 작업을 수행합니다. 소멸자는 객체가 소멸될 때 호출되며, 메모리의 해제나 리소스의 정리 작업을 수행합니다. #include class MyClass { public: // 생성자 MyClass() { std::cout

Application/기초 2024.04.10

[기초] C++ 접근 지정자 (private , protected, public)

C++은 객체지향 프로그래밍 언어로, 클래스와 객체를 사용하여 프로그램을 작성합니다.이때 클래스 멤버 변수와 함수에 접근을 제어하기 위해 접근 지정자(access specifier)를 사용합니다.C++에서는 세 가지 주요 접근 지정자가 있습니다.'public', 'private', 'protected' 각각의 접근 지정자는 해당 멤버의 접근 범위를 결정합니다.  public 'public' 접근 지정자로 선언된 멤버는 어디서든지 접근할 수 있습니다.이는 해당 멤버가 클래스 외부에서도 접근 가능하다는 것을 의미합니다.일반적으로 클래스의 인터페이스를 정의할 때 'public' 접근 지정자를 사용합니다. private 'private' 접근 지정자로 선언된 멤버는 클래스 내부에..

Application/기초 2024.04.08

[기초] C++ 상속과 다형성

C++에서 상속과 다형성은 객체 지향 프로그래밍의 핵심 개념 중 하나로, 코드의 재사용성과 유연성을 높이는 데 중요한 역할을 합니다. 이 글에서는 C++에서 상속과 다형성의 개념과 이를 구현하는 방법에 대해 알아보겠습니다 상속 (Inheritance) 상속은 객체 지향 프로그래밍에서 부모 클래스(기본 클래스)의 속성과 동작을 자식 클래스(파생 클래스)가 물려받는 개념입니다. 이를 통해 코드의 중복을 줄이고, 클래스 간의 계층 구조를 만들어 확장성을 높일 수 있습니다. class Animal { public: void sound() { cout

Application/기초 2024.04.04

[기초] C++ 객체 지향 프로그래밍 (OOP)

C++은 객체 지향 프로그래밍 (Object-Oriented Programming, OOP)의 주요 언어 중 하나로, 개체(객체)들 간의 상호작용을 중심으로 프로그래밍하는 방식입니다. C++에서 OOP의 기본 개념과 이점에 대해 살펴보겠습니다. 객체 지향 프로그래밍이란? 객체 지향 프로그래밍은 현실 세계의 사물을 모델링하여 프로그램을 구성하는 개발 방법론입니다. 이는 코드의 구조를 이해하고 관리하기 쉽도록 돕습니다. 객체 지향 프로그래밍은 객체라는 개념을 중심으로 프로그램을 설계하며, 이 객체들 간의 상호작용을 통해 프로그램을 완성합니다. 기본 개념 클래스(Class) 클래스는 데이터와 함수를 하나로 묶은 사용자 정의 데이터 형식으로, 객체를 생성하기 위한 설계도입니다. 객체(Object) 클래스의 인스..

Application/기초 2024.04.02

[기초] C++ 파일 입출력 : 기초와 예제

파일 입출력은 프로그래밍에서 중요한 부분 중 하나입니다. C++에서도 파일 입출력은 매우 유용하게 사용됩니다. 이번 포스팅에서는 C++에서의 기초적인 파일 입출력에 대해 알아보겠습니다. 파일 쓰기 (Write File) 먼저 파일에 데이터를 쓰는 방법을 살펴보겠습니다. 아래 예제는 텍스트 파일에 간단한 메시지를 쓰는 방법을 보여줍니다. #include #include // 파일 입출력을 위한 헤더 파일 int main() { // 파일 스트림 생성 std::ofstream outfile("example.txt"); // 파일에 데이터 쓰기 if (outfile.is_open()) { outfile

Application/기초 2024.04.01

[기초] C++ 포인터

C++에서 포인터는 메모리 주소를 저장하는 변수입니다. 이것은 다른 변수 또는 객체를 가리키는데 사용됩니다. 포인터는 C++에서 매우 강력한 기능을 제공하며, 메모리를 효율적으로 활용하고 동적 메모리 할당을 할 수 있도록 해줍니다. 포인터의 선언 및 초기화 포인터를 선언하려면 해당 변수의 데이터 형식 뒤에 '*' 기호를 사용합니다. 예를 들어, 정수를 가리키는 포인터는 다음과 같이 선언될 수 있습니다. int* ptr; 포인터를 초기화하려면 다른 변수의 주소를 할당하거나, 동적으로 메모리를 할당하여 초기화할 수 있습니다. int x = 5; int* ptr = &x; // x의 주소를 포인터에 할당 // 또는 동적 메모리 할당을 통해 int* ptr = new int; 포인터의 사용 포인터를 사용하여 변..

Application/기초 2024.03.26
728x90
반응형