2025/06/09 2

[C++]템플릿

순서함수 오버로딩템플릿함수 오버로딩함수 오버로딩: 컴파일러가 매개변수의 타입과 개수를 기준으로 같은 이름의 함수들을 구분할 수 있도록, 네임 맹글링하여 여러 개 정의할 수 있게 하는 것.네임 맹글링(Name Mangling): 함수 이름 구분을 위해 내부적으로 고유한 이름을 부여하는 것 (단, 함수의 반환형만으로는 오버로딩이 성립하지 않음)C언어와 다르게 C++에서는 오버로딩을 통해 동일한 이름의 함수를 여러 개 정의할 수 있음. => C는 함수 이름으로만 함수를 구분하지만, C++은 함수 이름과 매개변수 타입 정보를 함께 사용해 구분하기 때문함수 오버로딩이 유효해지는 조건매개변수 타입이 다른 경우매개변수의 개수가 다른 경우함수 오버로딩 호출함수 오버로딩이 되려면, 호출되는 함수가 분명해야함. 호출 시점..

C++ 2025.06.09

[C++] 자원 관리하기

순서스택 메모리힙(동적) 메모리Dangling PointerMemory Leak스마트 포인터얕은 복사와 깊은 복사언리얼 엔진의 메모리 관리스택 메모리함수 내에서 선언된 지역 변수와 매개변수는 별도로 동적 할당하지 않는 한, 기본적으로 스택 메모리에 저장되며, 함수가 끝나면 자동으로 해제됨.예외적인 상황으로 함수 내의 제어구조, 블록, 스코프 등에서 선언된 변수는 해당 지역이 끝날 때 마다 소멸됨.일반적으로 할당 가능한 스택 메모리의 크기가 제한적임변수의 스코프(생존 영역)을 벗어나면 자동으로 해제되므로, 메모리를 더 길거나 유연하게 관리하기 어려움 => 해당 문제를 해결하기 위해 힙(동적)메모리를 사용할 수 있음힙 메모리동적 할당 시 new 연산자를 사용하고, 해제 시 delete 연산자를 사용함스택과 ..

C++ 2025.06.09