동적 메모리 할당 및 제거
C++는 필요한 경우에는 데이터를 할당하여 사용한 후, 사용이 완료되었을 때 할당받은 데이터를 제거하는 방법을 제공한다. 이 방법은 대용량 데이터가 필요한 경우 동적 메모리를 자주 사용한다. 그리고 동적 메모리로 효율적으로 메모리를 사용할 수 있다. 자세한 내용은 아래 예제에서 확인할 수 있다.
예제
#include <iostream>
using namespace std;
int main()
{
int* psum; // 정수형 데이터의 시작 주소를 저장하는 변수 선언 // 정수형 (int) 데이터를 1개 (4바이트) 할당 받고 이 주소를 psum에 저장
psum = new int; // 동적 메모리 할당, 만약 정수형 데이터를 100개 할당 받고 싶으면 psum =new int[100];
if (psum == NULL) { // 할당된 메모리가 유효한지 검사, NULL이면 에러
cout << "동적 메모리 할당 에러" << endl;
return 0;
}
*psum = 0; // psum이 가리키는 정수형 데이터를 0으로 초기화
for (int k = 1; k <= 10; k++)
*psum += k;
cout << "1부터 10까지의 합은 =" << *psum;
delete psum; // 할당된 동적 메모리 제거
return 0;
}
실행 결과
1부터 10까지의 합은 =55
참고
1. 홍원기, Visual C++를 활용한 Windows Programming, 북스홀릭퍼블리싱, 2019.02.2
'C++ 기초 2' 카테고리의 다른 글
C++ friend 함수 (0) | 2024.01.30 |
---|---|
C++ this 포인터 (0) | 2024.01.29 |
C++ 객체 포인터와 객체 배열 (0) | 2024.01.23 |
C++ 생성자와 소멸자 (0) | 2024.01.22 |
C++ 클래스의 정의 (0) | 2024.01.19 |