카테고리 없음

21년 여름 기수스터디 2주차

토끼곰 2021. 7. 21. 23:32

*과제

 

Add files via upload · Gyuree01/-21@fe4d9ea (github.com)

 

Add files via upload · Gyuree01/-21@fe4d9ea

Permalink This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. Browse files Add files via upload Loading branch information Showing 3 changed files with 111 additions and 0 deletions. +46 −0

github.com

 

 

 

*수업 내용 정리  

 

1. 객체 포인터 

- 클래스 객체의 주소값을 가지는 포인터 

- 선언 방식: 클래스명 *객체명;

- 주소 지정 방식: 포인터변수= &객체이름;

- 객체 포인터 접근 방식: 1)객체 포인터명-> 멤버 / 2) (*객체 포인터명).멤버  

 

2. 객체 배열 

- 객체를 원소로 가지는 배열 

- 선언 방식: 클래스명 배열명[배열 크기]; 

- 2차원 객체 배열 선언 방식: 클래스명 배열명 [배열크기] [배열크기];

- 객체 배열 접근 방식: 배열명[].멤버 

 

3. 객체의 동적 생성 

- 정적 메모리 할당 -> 변수 선언을 통해 할당함

- 동적 메모리 할당 및 반환: new) 객체 동적 생성, 할당 시 생성자 호출 

                                     delete) 할당받은 메모리 반환, 소멸자 호출 

 

4. 복사생성자 

- '클래스명(const 클래스명 &참조변수)' 의 형태 

- 변수 선언을 통해 할당 

- 하나의 클래스에는 하나의 복사생성자만 존재 가능 

- 복사 시마다 새로운 객체가 생성됨 

 

#얕은 복사와 깊은 복사: 얕은 복사는 객체의 값만 복사하고 주소값은 공유

                                깊은 복사는 객체 자체를 복사하고 메모리를 새로 할당