More actions
imported>Unknown No edit summary |
(Repair batch-0002 pages from live compare) |
||
| Line 48: | Line 48: | ||
(몬소리지;;) | (몬소리지;;) | ||
Latest revision as of 00:16, 27 March 2026
class Test{
public:
Test();
~Test()
- 생성자
클래스의 인스턴스가 생성되었을때에 즉, 객체가 생성될때 호출됩니다. 위에 간단한 코드에서 Test();가 생성자에 해당되며 Test obj1; 이라고 해당하는 함수나 메인에서 생성이될때 호출이 되죠. 이때, default 생성자와 인수값을 갖는 여러 생성자가 함께 올 수있으며 인수값에 따라서 호출되는 생성자가 달라집니다.
- 소멸자
소멸자의 경우 ~Test(); 부분이 소멸자에 해당되고, 객체가 사라질때 호출되는데, 그 클래스의 인스턴스가 생성된 함수가 사라질때 자동적으로 사라지게 됩니다. 만일 메인함수에서 객체를 생성하였다면 메인함수가 사라질때 호출이 되고, 전역적으로 선언되어서 생성된경우는 프로그램이 종료시에 호출됩니다.
- 복사생성자
클래스에서 절때 빼놓으면 안되는 경우로, 위에 간단한 코드에서 빼 놓았습니다. 대입연산자나 함수를 호출할때, new 연산자에 의해 생성됩니다.
========================================================================================
생성자 3개중에 처음꺼만......
IntArray (int sz = defSize) { size = sz; ia = new int[sz]; }
소멸자는, ~IntArray() { delete [] ia; }
(몬소리지;;)