728x90
안녕하세요!
이번 글에서는 C++에서 클래스의 생성자와 소멸자에 대해 구체적으로 알아보겠습니다.
생성자와 소멸자는 클래스의 객체를 생성하고 소멸할 때 호출되는 특별한 멤버 함수입니다.
예제코드
#include <iostream>
class MyClass
{
public:
MyClass()
{
std::cout << "MyClass 생성자 호출" << std::endl;
}
~MyClass()
{
std::cout << "MyClass 소멸자 호출" << std::endl;
}
};
int main()
{
MyClass* obj = new MyClass(); // 동적 할당을 통한 객체 생성
/* 객체 핸들링 코드 */
delete obj; // 객체 소멸
return 0;
}
코드 해석
class MyClass
{
//내용 생략
};
- MyClass는 하나의 클래스를 나타냅니다.
- 클래스 내부에는 생성자와 소멸자가 정의되어 있습니다.
MyClass()
{
std::cout << "MyClass 생성자 호출" << std::endl;
}
- 객체가 생성될 때 자동으로 호출되는 함수입니다.
위 예제에서 생성자는 "MyClass 생성자 호출" 메시지를 출력합니다.
~MyClass()
{
std::cout << "MyClass 소멸자 호출" << std::endl;
}
- 소멸자(~MyClass())는 객체가 소멸될 때 자동으로 호출되는 함수입니다.
- 위 예제에서 소멸자는 "MyClass 소멸자 호출" 메시지를 출력합니다.
int main()
{
MyClass* obj = new MyClass(); // 동적 할당을 통한 객체 생성
// 객체 사용
delete obj; // 객체 소멸
return 0;
}
- MyClass의 객체를 동적으로 할당하고, 할당한 객체를 사용한 후 delete 키워드를 통해 소멸시킵니다.
- 이렇게 동적 할당을 통해 객체를 생성하고 소멸시킴으로써 생성자와 소멸자의 호출 타이밍을 명확하고 쉽게 확인할 수 있습니다.
생성자는 주로 객체 초기화에 사용되며, 소멸자는 객체가 더 이상 필요하지 않을 때 자원을 정리하고 메모리를 해제하는 등의 작업에 활용됩니다.
클래스의 생성자와 소멸자는 객체의 생명주기를 관리하는 중요한 역할을 수행합니다.
생성자와 소멸자는 클래스의 멤버 함수로써 클래스의 객체 생성과 소멸에 필수적인 역할을 수행합니다.
이를 통해 안정적이고 유지보수 가능한 코드를 작성할 수 있으며, 객체의 초기화와 정리를 적절하게 처리할 수 있습니다.
감사합니다!
728x90
'[C++] > 콘솔 프로그래밍' 카테고리의 다른 글
[C++] 콘솔 프로그래밍 : switch case문 사용 (24) | 2023.06.17 |
---|---|
[C++] 콘솔 프로그래밍 : 소수점 반올림과 반내림 (20) | 2023.06.17 |
[C++] 콘솔 프로그래밍 : 열거형(enum) 활용 (34) | 2023.06.12 |
[C++] 콘솔 프로그래밍 : 포인터 연산 (54) | 2023.06.11 |
[C++] 콘솔 프로그래밍: 클래스의 상속과 다형성 (47) | 2023.06.09 |