프로그래밍 언어(154)
-
C++ 초급 - 5. 포인터와 참조 (Pointers and References) (3 - 참조 (& 연산자))
📌 5.3 참조 (& 연산자)참조(Reference)는 변수의 별칭(Alias) 역할을 하는 변수이다.참조를 사용하면 기존 변수를 새로운 이름으로 다룰 수 있으며, 포인터와 유사하지만 한 번 초기화되면 다른 변수를 가리킬 수 없는 특징이 있다.참조는 특히 함수 매개변수 전달(Call by Reference)에서 자주 사용되며, 복사 비용을 줄이고 원본 값을 직접 수정할 수 있도록 해준다.📌 1. 참조 변수의 선언 및 초기화🔹 (1) 참조 변수 선언 방식참조 변수를 선언할 때는 & 연산자를 사용하며, 반드시 초기화해야 한다.💡 기본 문법데이터타입 &참조변수명 = 기존변수명;💡 예제: 참조 변수 선언 및 초기화#include int main() { int num = 10; int& ref..
2025.02.12 -
C++ 초급 - 5. 포인터와 참조 (Pointers and References) (2 - 동적 메모리 할당 (new, delete))
📌 5.2 동적 메모리 할당 (new, delete)C++에서는 new와 delete 키워드를 사용하여 런타임(Run-time)에 동적으로 메모리를 할당 및 해제할 수 있다.동적 메모리 할당을 활용하면 프로그램 실행 중 필요한 만큼 메모리를 할당할 수 있으며,전역 변수나 지역 변수로 선언할 수 없는 대량의 데이터 처리나 가변적인 크기의 배열 관리가 가능하다.그러나, 할당한 메모리를 해제하지 않으면 메모리 누수(Memory Leak)가 발생할 수 있으므로 delete를 사용하여 반드시 해제해야 한다.📌 1. new와 delete를 사용한 동적 메모리 할당 및 해제🔹 (1) new 키워드: 동적 메모리 할당new 키워드는 힙(Heap) 영역에 메모리를 동적으로 할당한다.사용이 끝나면 반드시 delete..
2025.02.12 -
C++ 초급 - 5. 포인터와 참조 (Pointers and References) (1 - 포인터 기본 개념 (*, &, nullptr))
📌 5. 포인터와 참조 (Pointers and References)C++에서 포인터(Pointer)와 참조(Reference)는 메모리 주소를 직접 다루는 기능을 제공한다.포인터와 참조를 사용하면 효율적인 메모리 관리와 객체 제어가 가능하지만,올바르게 사용하지 않으면 메모리 누수(Memory Leak)나 프로그램 오류가 발생할 수 있다.C++11에서는 스마트 포인터(Smart Pointer)가 도입되어 메모리 관리를 자동화할 수 있다.이 단원에서는 포인터와 참조를 다루며, 동적 메모리 할당 및 스마트 포인터의 활용까지 학습한다.📌 5.1 포인터 기본 개념 (*, &, nullptr)포인터(Pointer)는 메모리 주소를 저장하는 변수이다.일반 변수는 값을 저장하지만, 포인터는 변수의 주소를 저장하며..
2025.02.12 -
C++ 초급 - 4. 함수와 변수의 범위 (Functions and Variable Scope) (5 - inline 함수 (Inline Functions))
📌 4.5 inline 함수 (Inline Functions)inline 함수(인라인 함수)는 함수를 호출할 때 발생하는 오버헤드를 줄이기 위해, 컴파일러가 함수 호출을 코드로 직접 치환하는 기능이다.일반적인 함수 호출은 스택(Stack) 메모리를 사용하고, 함수의 주소로 이동하는 과정(컨텍스트 스위칭)이 필요하다.반면, inline 함수는 함수의 코드가 호출 위치에 직접 삽입(inline expansion)되어 실행 속도가 향상될 수 있다.📌 1. inline 함수의 개념일반적인 함수 호출 과정함수 호출 시 매개변수와 반환 주소를 스택에 저장함수 코드 실행 후 반환스택에서 데이터 정리 및 반환 주소로 복귀이러한 과정은 함수를 자주 호출하는 경우 실행 속도를 저하시킬 수 있다.따라서, inline 함..
2025.02.12 -
C++ 초급 - 4. 함수와 변수의 범위 (Functions and Variable Scope) (4 - 변수의 범위 (Variable Scope))
📌 4.4 변수의 범위 (Variable Scope)C++에서 변수의 범위(Scope)란 변수가 어디에서 접근할 수 있는지를 결정하는 규칙이다.변수의 선언 위치와 저장 방식에 따라 접근 가능 여부와 생명 주기(lifetime)가 달라진다.변수의 범위를 이해하면 메모리 관리, 성능 최적화, 코드 유지보수에 도움이 된다.📌 1. 변수의 종류🔹 (1) 전역 변수 (Global Variables)함수 외부에서 선언된 변수로, 프로그램 전체에서 접근 가능.프로그램이 시작될 때 생성되고 종료될 때까지 유지됨.메모리의 데이터 영역(Data Section)에 저장됨.💡 예제: 전역 변수 사용#include int globalVar = 10; // 전역 변수void printGlobal() { std::c..
2025.02.12 -
C++ 초급 - 4. 함수와 변수의 범위 (Functions and Variable Scope) (3 - 기본 매개변수 (Default Arguments))
📌 4.3 기본 매개변수 (Default Arguments)기본 매개변수(Default Arguments)는 함수의 매개변수에 기본값을 설정하는 기능이다.함수를 호출할 때 특정 매개변수를 생략하면 기본값이 자동으로 적용된다.이 기능을 활용하면 코드를 간결하게 작성하고, 불필요한 함수 오버로딩을 줄일 수 있다.📌 1. 기본 매개변수의 정의 및 사용법🔹 기본 매개변수 선언 방식반환타입 함수이름(매개변수 = 기본값);💡 예제: 기본 매개변수 설정#include // 함수 선언 (기본 매개변수 사용)void greet(std::string name = "손님") { std::cout 🔹 출력 결과안녕하세요, 홍길동님!안녕하세요, 손님님!💡 매개변수를 생략하면 기본값이 자동으로 적용됨.📌 2. ..
2025.02.12