반응형
생성자란? 객체 선언시 실행되는 매소드이다.
생성자를 통하여 맴버 변수의 값을 초기화 할 수 있으며 다양한 방법으로 활용이 가능하다.
생성자는 오버로딩을 통하여 여러개 정의 할 수 있으며 객체선언시 파라미터를 통하여 해당 생성자를 호출한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | class test_class{ public: int value; test_class()//생성자 정의 { this->value = 1; } }; int test_fnc()// 테스트 함수 { test_class test; //test_class 객체 선언 생성자 호출 return test.value; //생성자에서 value값을 1로 초기화 하였기 때문에 1이 리턴이 된다. } | cs |
반대로 소멸자는 객체가 소멸할때에 실행되는 메소드 이다.
~를 앞에 붙여서 정의하며 인자를 가질수 없다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | class test_class{ public: int value; test_class()//생성자 정의 { this->value = 1; } ~test_class()//소멸자 정의 { std::cout<<"소멸"; } }; int test_fnc()// 테스트 함수 정의 { test_class *test; //test_class 포인터 선언 test = new test_class(); // 동적할당으로 객체생성 //생성자 호출 delete test;// 객체 소멸 소멸자 호출 return 0; } | cs |
반응형
'프로그래밍 > c++' 카테고리의 다른 글
[c++] virtual(가상함수,순수가상함수) (0) | 2018.12.19 |
---|---|
[c++] class의 상속 (부모class 및 자식class) (0) | 2018.12.19 |
[c++] class 정의 및 접근제한자 (0) | 2018.12.19 |
[c++] 객체지향 프로그래밍에서의 캡슐화란? (0) | 2018.12.19 |
[c++] this 포인터 (0) | 2018.12.19 |