320x100

전체 글 435

STL 컨테이너

표준 라이브러리는 관련 개체 컬렉션을 저장할, 형식이 안전한 다양한 컨테이너를 제공합니다. 컨테이너는 클래스 템플릿입니다. 컨테이너 변수를 선언할 때 컨테이너에 포함할 요소의 형식을 지정합니다. 1. vector 항목의 나열을 저장하고 항목별로 랜덤 액세스가 가능하다. 배열과 다르게 인덱스 경계 검사를 자동으로 수행한다. 배열과 동일하게 연속된 메모리에 저장된다. 마지막 인덱스에 항목을 삽입/삭제 할 때 O(1)의 소요시간을 보장한다. 임의의 위치에 있는 데이터에 접근할 때 사용하기 좋다. 2. list 이중 연결 리스트 데이터 구조이다. vector나 array처럼 일련의 항목을 저장한다. 다만 데이터들이 연속된 메모리에 위치하지 않는다. (앞뒤로 연결된 데이터들의 위치만 기억) 항목을 찾는데는 느리지..

예외처리(exception)

MSDNTry, Throw 및 Catch 문(C++) : https://msdn.microsoft.com/ko-kr/library/6dekhbbc.aspx : https://msdn.microsoft.com/ko-kr/library/t65b74ad.aspx 예외 처리는 일반적인 실행의 흐름을 바꾸는 몇 가지 조건을 처리하도록 설계한 프로그래밍 언어의 개념이나 컴퓨터 하드웨어 구조를 말한다. 사용 키워드는 try, catch, throw를 사용한다.try : 예외 발생을 체크할 구문catch : 예외 발생시 처리할 구문throw : 예외 발생시키는 구문 #include // 익셉션 클래스가 정의되어 있는 헤더 MyData md;try{// Code that could throw an exception md..

포인터 인자 검증하기

/* IsWritableMemory : 주어진 메모리 주소의 상태가 쓰기가능인지 체크하는 함수 Param : LPVOID pMemoryAddr : 검사하고자 하는 메모리의 주소 Return Value : ERROR_SUCCESS : 인자로 주어진 주소의 메모리가 Read/Write 가능한 경우 기타 값 : Read/Write 가능한 메모리가 아니면 해당 주소의 Protect Mode 를 나타내는 0이 아닌 값을 리턴함. http://msdn.microsoft.com/en-us/library/aa915370.aspx 참조 */ INT IsWritableMemory(LPVOID pMemoryAddr) { MEMORY_BASIC_INFORMATION MemInfo = {0,}; size_t nResult = ..

320x100