C++
🎯 생성자의 특징
🔔 예) 생성자 사용
실행 결과
🔔 예) 소멸자 사용
실행 결과
🔔 예 )
실행 결과
복사 생성자를 사용하지 않으면 Binary Copy 를 해준다.
Point a; // 디폴트 생성자 발동
Point b = a; // copy 복사 생성자 발동
Binary 복사는 포인터를 사용할경우 소멸되면서 동적할당을 delete 시킬경우 복 사된 객체가 포인터 주소를 잃어버리게 됨으로 문제가 될 수 있다.
🔔 예) 멤버 초기화 리스트를 사용한 초기화
실행 결과
🔔 예) 임시 객체를 전달하기
실행 결과
🔔 예) 정적 멤버를 사용한 객체 수 세기
실행 결과
🔔 예) 인라인 함수를 사용하는 main()함수
🔔 예) 인라인 함수를 사용하는 main() 함수 실제
🎯 가이드 라인
🎯 인라인 함수를 만드는 법
🔔 예) 클래스의 정의 – 외부에서 인라인 함수 만들기
💡 인라인 함수는 헤더 파일에 넣는 것을 규칙처럼 생각하는 것이 좋다.
분할 컴파일 일 경우 obj 파일 생성시 inline이 삽입되므로 link전에 발생한다.
그러므로 inline함수는 헤더 파일에 있어야 한다.
💡 Const 로 만드는 것은 어떤 의미가 있을까 ?
const Point pt(100, 100);
🔔 예) class 멤버의 static 함수
실행 결과
🔔 예) 함수포인터 연습
(z1.*test)(); // 함수 포인터 호출
실행 결과
🔔 예) 배열에서의 생성자와 소멸자
<point.h>
<point.cpp>
<main.cpp>
실행 결과
[C++] string(문자열)/상속 (0) | 2016.09.21 |
---|---|
[C++] 생성자, 소멸자 호출 시점 / This 포인터 / 상속 (0) | 2016.09.21 |
[C++] 디폴트 인자/typedef 함수 포인터 정의/class 정의 (0) | 2016.09.21 |
[C++] 기초2(함수 오버로딩) (0) | 2016.09.20 |
[C++] 기초 (0) | 2016.09.20 |