C++/입문편12 [입문편] 10강. Class 기본 구조&예시 및 Struct 구문과의 차이점을 알아보자 강의에 들어가기 앞서 C++의 핵심은 객체지향의 도입입니다. 그래서 본 강의의 구성을 아래와 같이 구성했습니다. C++ 입문편 → 객체지향 초급편 → 객체지향 중급편 → 객체지향 고급편 그렇기 때문에 입문 편에서는 Class 파트의 가장 기본적인 구조에 대해서만 다룰 예정이며, "객체지향 초급편 → 객체지향 중급 편→ 객체지향 고급 편"에서 보다 자세하게 강의를 다룰 것입니다. 그렇기 때문에 본 강의에서는 단순히 Class란 이런 것이다 정도의 느낌만 알고 넘어가면 충분합니다. Class의 기본 구조 및 예시 C++에서 클래스는 데이터 멤버(특성 또는 속성이라고도 함) 및 멤버 함수(메서드 또는 동작이라고도 함)를 단일 엔터티 내에서 캡슐화하는 사용자 정의 데이터 형식입니다. 클래스는 키워드 "class.. C++/입문편 2023. 1. 22. 9강. C++과 C#의 차이점 → 메모리 누수 및 속도 측면에서 살펴보자 C++과 C#의 Memory Allocation 의 차이점 → 메모리 누수 및 속도 차이 C++과 C#은 변수와 개체에 대한 메모리 할당 방법이 다릅니다. C++에서 메모리는 여러 가지 방법으로 할당될 수 있습니다. 스택 할당: 함수 내에서 선언된 변수는 자동으로 스택에 할당됩니다. 스택 할당은 빠르지만 크기가 제한되어 있고 함수가 종료되면 자동으로 해제됩니다. 힙 할당: new 연산자를 사용하여 변수를 힙에 명시적으로 할당할 수 있습니다. 힙 할당은 스택 할당보다 느리지만 메모리는 delete 연산자를 사용하여 명시적으로 해제될 때까지 할당된 상태로 유지됩니다. C#에서 메모리는 .NET Framework의 가비지 수집기에 의해 자동으로 관리됩니다. 즉, 개체에 대해 명시적으로 메모리를 할당하고 해제할.. C++/입문편 2023. 1. 22. [보충 설명] 8.1.강 malloc & free와 new&delete에 대해 알아보자 malloc() & free() 와 new() & delete() 특징 C++에서 malloc() 및 free() 함수는 힙에서 동적으로 메모리를 할당 및 할당 해제하는 데 사용됩니다. malloc()은 지정된 크기의 힙에 메모리 블록을 할당하는 데 사용되는 C 표준 라이브러리의 함수입니다. 이 함수는 할당된 메모리의 첫 번째 바이트에 대한 포인터를 반환하거나 할당에 실패한 경우 null 포인터를 반환합니다. free()는 이전에 malloc()으로 할당된 메모리 블록을 할당 해제하는 데 사용되는 C 표준 라이브러리의 함수이기도 합니다. 이 함수는 메모리 블록에 대한 포인터를 인수로 사용하고 다시 사용할 수 있도록 시스템에 다시 해제합니다. 반면에 C++는 힙에 메모리를 할당하고 할당 해제하는 new 및.. C++/입문편 2023. 1. 22. 8강. 실행중인 프로그램의 메모리 공간을 살펴보자 (데이터, 스택, 힙, malloc & free) 메모리 공간 C++에서 메모리는 데이터가 저장되고 컴퓨터 프로그램에 의해 조작되는 물리적 공간을 의미합니다. 메모리는 기본 메모리(RAM이라고도 함)와 보조 메모리(예: 하드 드라이브 및 플래시 드라이브)의 두 가지 주요 범주로 나눌 수 있습니다. 기본 메모리는 운영 체제와 실행 중인 프로그램이 저장되고 실행되는 컴퓨터의 기본 메모리입니다. 휘발성이므로 전원이 꺼지면 저장된 데이터가 손실됩니다. 기본 메모리의 크기는 제한되어 있으며 일반적으로 기가바이트(GB) 단위로 측정됩니다. 반면 보조 메모리는 비휘발성이며 현재 사용하지 않는 데이터와 프로그램을 저장하는 데 사용됩니다. 보조 메모리의 크기는 일반적으로 테라바이트(TB) 또는 페타바이트(PB) 단위로 측정됩니다. C++에서 메모리 관리는 프로그램 실행.. C++/입문편 2023. 1. 22. 7강. 포인터와 레퍼런스 기본 개념 및 예시 코드로 살펴보기(With Call-by-value, Call-by-reference) Call-by-value 살펴보기 C++ 및 기타 많은 프로그래밍 언어에는 함수에 인수를 전달하는 두 가지 주요 방법인 값에 의한 호출과 참조에 의한 호출이 있습니다. 값별 호출은 함수에 인수를 전달하는 기본 방법입니다. call-by-value로 함수를 호출하면 인수의 값이 함수로 전달됩니다. 결론적으로, 함수는 인수의 복사본에서 작동하므로 함수 내부의 인수에 대한 변경 사항은 함수 외부의 원래 변수에 영향을 주지 않습니다. 예를 들어, 다음 코드에서: void increment(int x) { x++; } int main() { int a = 5; increment(a); cout C++/입문편 2023. 1. 22. 6강. 단일 및 이중 배열 기본 구조 및 예시 살펴보기 단일 배열(Single Array) 이란? C++에서 배열은 연속 메모리 위치에 저장된 동일한 데이터 유형의 요소 모음입니다. 배열은 정수, 실수 또는 문자와 같은 동일한 데이터 유형의 여러 값을 저장하는 데 사용할 수 있습니다. C++에서 배열의 기본 구조는 배열 이름과 대괄호 []로 묶인 배열의 크기가 뒤따르는 데이터 유형을 사용하는 것입니다. 다음은 C++에서 정수 배열을 선언하는 방법의 예입니다. int myArray[5]; 이것은 5개의 정수 값을 저장할 수 있는 "myArray"라는 배열을 선언합니다. 배열 요소는 0부터 시작하여 인덱싱되므로 첫 번째 요소는 myArray[0]이고 두 번째 요소는 myArray[1]입니다. 선언 시 배열을 초기화할 수도 있습니다. int myArray[] = .. C++/입문편 2023. 1. 22. 5강. Switch/Case문 기본 개념 설명 및 코드 예시를 살펴보자 Switch - Case 기본 구조 C++에서 "switch" 문은 식의 값에 따라 다른 작업을 수행할 수 있도록 하는 제어 흐름 문입니다. 여러 "if-else" 문을 사용하는 대신 사용할 수 있습니다. C++에서 "switch" 문의 기본 구문은 다음과 같습니다. switch (expression) { case value1: // code to be executed if expression == value1 break; case value2: // code to be executed if expression == value2 break; // ... default: // code to be executed if expression does not match any of the cases break; .. C++/입문편 2023. 1. 22. 4강. IF-ELSE 조건문 기초 설명 및 사용 예시를 살펴보자 IF-ELSE 조건문 설명 C++에서 "if" 문은 코드 블록을 조건부로 실행할 수 있게 해주는 제어 흐름 문입니다. C++에서 "if" 문의 기본 구문은 다음과 같습니다. if (condition) { // code to be executed if condition is true } 조건은 참 또는 거짓으로 평가되는 표현식입니다. 조건이 참이면 중괄호 안의 코드가 실행됩니다. 조건이 거짓이면 중괄호 안의 코드는 건너뛰고 프로그램은 if 문 다음 문으로 계속 진행됩니다. 다음은 C++의 if 문의 예입니다. #include int main() { int x = 5; if (x > 3) { std::cout C++/입문편 2023. 1. 22. 3강. For 반복문의 기초 설명 및 예시를 살펴보자(2중 For문, 평균, 왜도, 첨도, 구구단) for 반복문의 기초 설명 C++에서 "for" 루프는 지정된 횟수만큼 코드 블록을 반복할 수 있게 해주는 제어 흐름 문입니다. C++에서 "for" 루프의 기본 구문은 다음과 같습니다. for (initialization; condition; increment/decrement) { // code to be executed } "initialization" 문은 루프 시작 시 한 번만 실행됩니다. 루프에서 사용될 모든 변수를 초기화하는 데 사용됩니다. 루프의 각 반복 전에 "condition" 문이 평가됩니다. 조건이 참이면 루프 내부의 코드가 실행됩니다. 조건이 거짓이면 루프가 종료됩니다. "increment/decrement" 문은 루프가 반복될 때마다 실행됩니다. 초기화 문에서 초기화된 변수를 업.. C++/입문편 2023. 1. 22. 2강. Microsoft Visual C++ 의 데이터 형식(Data Type)에 대해 알아보자 (int, floor, string, char, long) C++ 데이터 형식 Microsoft Visual C++(Visual C++라고도 함)는 Microsoft에서 개발 및 배포하는 C++ 프로그래밍 언어 버전입니다. 표준 C++ 언어와 마찬가지로 Visual C++ 에는 프로그램에서 사용할 수 있는 다양한 기본 제공 데이터 형식이 있습니다. 아래는 Microsoft Visual C++에서 사용할 수 있는 몇 가지 데이터 형식을 정리한 것입니다. int: 42 또는 -5와 같은 정수를 나타내는 데 사용됩니다. unsigned int: 42 또는 0과 같은 음이 아닌 정수를 나타내는 데 사용됩니다. long: 1234567890과 같이 더 큰 정수를 나타내는 데 사용됩니다. unsigned long: 1234567890과 같이 음수가 아닌 더 큰 정수를 나타.. C++/입문편 2023. 1. 22. [보충 설명] 1-1강. "헷갈리기" 쉬운 네임스페이스(namespace), 헤더, cpp, 클래스, 메서드 지식 뿌시기 네임스페이스(namespace), 헤더, cpp, 클래스, 메서드가 어떠한 차이점이 있을까? 네임스페이스는 일련의 식별자(예: 변수 이름, 함수 이름 등)를 보유하는 컨테이너이며 관련 식별자를 서로 분리하여 대규모 프로젝트에서 이름 충돌을 방지하는 데 도움이 됩니다. 헤더 파일(포함 파일이라고도 함)은 프로그램의 다른 부분에서 사용할 수 있는 함수, 변수 및 기타 구성에 대한 선언을 포함하는 파일입니다. 헤더 파일은 일반적으로 파일 확장자가 ".h"이고 전처리기 지시문 #include를 사용하여 소스 파일에 포함됩니다. C++ 소스 파일("cpp 파일"이라고도 함)에는 해당 헤더 파일에 선언된 함수 및 기타 구성의 구현이 포함되어 있습니다. C++ 소스 파일은 일반적으로 파일 확장자가 ".cpp"입니다... C++/입문편 2023. 1. 21. [필독] 1강. C++ 전체적 구조적 접근 설명 - 입문자는 '반드시' 필요한 기초 이론 (cpp, header & iostream, namespace) ******************************************************************************** 입문자는 반드시 본 포스팅을 여러번 반복해서 공부해야됩니다. 목차에 한줄 요약 카테고리가 있으니 빠르고, 쉽게 이해할 수 있습니다. ******************************************************************************** C++의 배경 C++는 대규모 응용 프로그램을 개발하는 데 널리 사용되는 범용 고급 프로그래밍 언어입니다. C 프로그래밍 언어의 확장이며 1983년 Bjarne Stroustrup에 의해 개발되었습니다. C++는 객체 지향 프로그래밍 언어로 캡슐화, 상속 및 다형성을 지원합니다. 또한 절차.. C++/입문편 2023. 1. 17. 이전 1 다음