Top Banner
Smart Pointer 박박박
27

Smart pointer

Jun 10, 2015

Download

Engineering

Inha University

Introduction of Smart Pointer
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Smart pointer

Smart Pointer

박경남

Page 2: Smart pointer

차례

• Smart Pointer?• 등장배경 ~ 원리• 여러가지 Smart Pointer• 사용 예

Page 3: Smart pointer

Memory Leak

CPU

Memory

Page 4: Smart pointer

Idea

Page 5: Smart pointer

Idea

Page 6: Smart pointer

Idea

Page 7: Smart pointer

Idea

Page 8: Smart pointer

Idea

Page 9: Smart pointer

Idea

Page 10: Smart pointer

Idea

Page 11: Smart pointer

Idea

Page 12: Smart pointer

auto_ptr

1.배열 해제 불가능2.Reference Counting 을 지원하지 않음

Page 13: Smart pointer

shared_ptr

여전히 배열 해제 불가능

Page 14: Smart pointer

unique_ptr

Reference Counting 을 지원하지 않음

Page 15: Smart pointer

다시 shared_ptr

Page 16: Smart pointer

default_delete??

Page 17: Smart pointer

My Deleter

Page 18: Smart pointer

shared_ptr 의 소멸자에선 ..

Page 19: Smart pointer

lambda

Page 20: Smart pointer

Example : vector

Page 21: Smart pointer

Example : vector

Page 22: Smart pointer

Example : File Handle

Page 23: Smart pointer

Example : Wrapping

Page 24: Smart pointer

Example : CreateFileWA

Page 25: Smart pointer

Example : CreateFileWA

HANDLE hFile = CreateFile(…)CloseHandle(hFile)

FILE* fp = fopen(…)fclose(fp)

Person* p = new Person()delete p

winnt.h

Page 26: Smart pointer

Example : CreateFileWA

Page 27: Smart pointer

?