본문/내용
_SLIDE_1_
차례
도큐먼트의 데이터 관리
01. 메모리에서 데이터관리
데이터 구조
MFC 컬렉션 클래스
02. 메모리 할당
03. 파일 입출력
CFile 클래스
CArchive 클래스
CFileDialog 클래스
Serialize
04. 레지스트리에 프로그램의 설정 저장
_SLIDE_2_
01. 메모리에서 데이터관리
_SLIDE_3_
01. 메모리에서 데이터관리
데이터 구조 : 배열
동일한 형식의 데이터 메모리 상의 연속된 공간에 저장하는 구조 int array[100]
_SLIDE_4_
01. 메모리에서 데이터관리
데이터 구조 : 리스트
N개의 데이터를 저장한다고 했을 때, 리스트는 하나하나가 따로 저장된다.
각각의 데이터가 저장되는 공간을 노드라 하고, 노드를 연결하는 포인터를 링크라고 한다.
_SLIDE_5_
01. 메모리에서 데이터관리
데이터 구조 : 맵 (Map, Dictionary, Hash Table)
키 값을 이용하여 데이터를 참조하는 데이터 구조
_SLIDE_6_
01. 메모리에서 데이터관리
MFC 컬렉션 클래스 : 배열 클래스
클래스
데이터 형식
CByteArray
Byte
CDWordArray
DWORD
CObArray
CObject
CPtrArray
void
CStringArray
CString
CUIntArray
UINT
CWordArr…
ordToOb
WORD
CObject
CMapWordToPtr
WORD
void
_SLIDE_13_
01. 메모리에서 데이터관리
MFC 컬렉션 클래스 : 맵 클래스
함수
기능
GetCount
맵에 저장된 항목의 개수 반환
IsEmpty
맵에 저장된 항목이 없으면 TRUE 반환
SetAt
키 값과 데이터 쌍을 맵에 저장
opertor
SetAt함수와 같은 기능을 한다
map.SetAt(“August”, 8); → map[“August”]=8;
Lookup
주어진 키 값에 해당하는 데이터를 얻어준다
RemoveKey
주어긴 키와 그에 해당하는 데이터를 삭제
RemoveAll
맵에 저장된 모든 항목을 삭제
GetStartPosition
맵에 저장된 첫 번째 항목의 포인터 반환
GetNextAssoc
주어진 포인터가 가리키는 항목의 키 값과 데이터를 얻어주고, 포인터는 다음 항목을 가리키도록 한다.
_SLIDE_14_
01. 메모리에서 데이터관리
MFC 컬렉션 클래스 : 맵 클래스
_SLIDE_15_
01. 메모리에서 데이터관리
MFC 컬렉션 클래스 : 배열/리스트/맵
배열
리스트
맵
순차적 정리
빠름
느림
느림
중간에 데이터 삽입
느림
빠름
빠름
인덱스
정수 인덱스
없음
키 값 인덱스
검색 속도
느림
느림
빠름
n번째 데이터 접근
빠름
느림
느림
데이터 중복 가능
가능
가능
데이터는 중복 가능, 키 값은 불가능
_SLIDE_16_
02. 메모리 할당
_SLIDE_17_
02. 메모리 할당
윈도우 운영체제가 제공하는 메모리 환경
윈도우 환경에서 응용 프로그램들은 운영체제가 관리하는 가상적인 메모리 공간에서 실
행된다. 이 가상 메모리 공간은 운영체제에 의해 실제 시스템에 설치되어 있는 물리적인
메모리 공간을 맵핑된다.
_SLIDE_18_
02. 메모리 할당
스택과 힙(Stack and Heap)
stack : 임시