분류 전체보기41 박싱과 언박싱 박싱(Boxing)object 형식은 참조 형식이기 때문에 힙에 데이터 할당.int나 double 형식은 값 형식이기 때문에 스택에 데이터 할당. object a = 20; 위와 같은 코드가 있다면20은 박싱되어 힙에 할당되고 a는 그 주소를 참조함. 언박싱(Unboxing)object a = 20;int b = (int) a; a가 20이 박싱되어 있는 힙을 참조하고 b는 a가 참조하고 있는 메모리의 값을 복사.이 때 그 값을 복사하기 위한 과정이 언박싱. 2016. 4. 28. Python 2.7 - 한글 출력 맨 윗줄에 추가 #-*- coding: utf-8 -*- 2016. 4. 23. C++ STL - 순차컨테이너 순차 컨테이너 1. vector #include using namespace std; 선언 vector v; vector v(5); // v[0]~v[4] = 0 초기화 vector v(5,1); // v[0]~v[4] = 1 초기화 삽입 / 삭제v.push_back(10); // 가장 끝에 원소 10 추가 v.pop_back(); 크기 v.size(); // 실제 들어있는 데이터의 크기 v.capacity(); // 현재 할당받은 메모리의 크기 재할당v.resize(10); // 데이터를 재할당 v.resize(10, 1); // 데이터를 재할당 , 1로 초기화v.reserve(10); // 할당받은 메모리를 재할당v.reserve(10, 1); // 할당받은 메모리를 재할당 , 1로 초기화 출력 cout 2016. 4. 19. C++ 11 - 스마트 포인터 동적 메모리 할당과 해제에서 개발자의 실수로 발생하는 메모리 누수를 스마트하게 처리해주는 포인터. 1. auto_ptr #include class test{public: test(){ cout introduce(); ptrtest2->introduce(); *또한 auto_ptr 은 C++ 11 표준이 아니다. 2. unique_ptrauto_ptr 의 소유권에 의한 오류를 컴파일 단계에서 잡아준다.C++ 11 표준이다. 3. shared_ptr하나의 동적 객체에 대해 아예 여러개의 스마트 포인터가 가리킬 수 있도록 한다.C++ 11 표준이다. 2016. 4. 8. C++ 11 - chrono 시간 측정 #include int main(int argc, const char * argv[]) { int n; chrono::system_clock::time_point start = chrono::system_clock::now(); for(int i = 0; i < 100000000; i++){ n++; } chrono::duration sec = chrono::system_clock::now() - start; chrono::microseconds mic = chrono::duration_cast(sec); cout 2016. 4. 6. 이전 1 ··· 4 5 6 7 다음