본문 바로가기
개발/C++

C++ 개념 정리 5일차 포스팅

by Eunduck 2022. 5. 21.
C++ 개념 정리 포스팅

안녕하십니까. Eun🦆입니다.

제가 공부하며 정리해둔 내용이 있어 포스팅하고자 합니다.

배움의 출처는 ‘열혈 C++ 프로그래밍’입니다.

5일차

41. this 포인터 // 객체 자신을 가리키는 용도

// this 포인터는 그 주소값과 자료형이 정해져 있지 않은 포인터

this → num = 208; = (*this).num1 = 207;

→ 멤버 변수 num 포인터

42. Self-Reference의 반환

객체 자신을 참조할 수 있는 참조자

SelfRef & Adder ( int n ) {

num += n;

return *this; } // 객체 자신 반환

43. 복사 생성자

( int num = 20; // = int num ( 20 ))

SoSimple sim2 = sim1; // = SoSimple Sim2 ( sim1 );

44. 디폴트 복사 생성자

SoSimple ( const SoSimple &copy ) : num1 ( copy.num1 ), num2 ( copy.num2 ) { }

45. 변환에 의한 초기화 막기 explicit

Explicit SoSimple ( const SoSimple &copy ) : num1 ( copy.num1 ), num2 ( copy.num2 ) { }

// SoSimple sim2 = sim1; X (대입 연산자)

SoSimple sim2 ( sim1 );

46. 얕은 복사 : 디폴트 복사 생성자 : 멤버 대 멤버 복사

// 멤버 변수가 힙의 메모리 공간 참조하는 경우 문제

47. 깊은 복사 : 멤버뿐 아니라 포인터로 참조하는 대상까지 깊게 복사

Person ( const person & copy ) : age (copy.age)

{ name = new char [ strlen(copy.name)+1 ];

Strcpy(name, copy.name); }

48. 임시 객체는 다음 행에서 바로 소멸되나 참조자에 참조되는 임시 객체는 바로 소멸되지 않는다.

49 const 함수 // 이 객체의 데이터 변경을 허용하지 않겠다.

const 객체는 const 함수에서만 호출 가능하다.

50. friend 선언은 private 멤버의 접근 허용하는 선언

Friend class Girl; // Girl은 클래스의 이름, Girl 클래스 friend 선언

 

네이버 블로그 리뉴얼입니다.

(https://blog.naver.com/unsuk1/221442335493)

 

'개발 > C++' 카테고리의 다른 글

C++ 개념 정리 7일차 포스팅  (0) 2022.05.21
C++ 개념 정리 6일차 포스팅  (0) 2022.05.21
C++ 개념 정리 4일차 포스팅  (0) 2022.05.21
C++ 개념 정리 3일차 포스팅  (0) 2022.05.21
C++ 개념 정리 2일차 포스팅  (0) 2022.05.21

댓글