Angel Wing Heart

언어 / 엔진/C++

언어 / 엔진/C++

[C++] 객체 생성 방법 (Stack, Heap)

객체 생성 방법 C++에서는 객체를 생성할 때 두가지 방법을 사용할 수 있다. 각 방법에 따라 객체가 할당되는 메모리 영역이 달라진다. 1. Stack에 할당 일반적인 변수와 같이 선언한다. Foo obj1 = Foo(5); Foo obj2(10); 2. Heap에 할당 new 키워드를 사용하여 선언한다. Foo* obj3 = new Foo(20); 운영체제 시간에 배웠듯이, Stack 메모리 영역은 변수를 선언한 스코프 영역을 벗어나면 자동으로 메모리가 해제되지만, Heap 메모리 영역은 프로그래머가 관리해야 하는 영역이므로 자동으로 해제가 되지 않는다. 위 코드의 obj3을 보면, new 키워드를 이용해 Heap 메모리에 객체를 할당하고 있다. 포인터는 Stack에 있고, 실제 객체의 데이터는 Hea..

언어 / 엔진/C++

[C++] 코테 입출력 속도 높이기

ios_base::sync_with_stdio(0); cin.tie(0);개행할 때도 endl말고 \n 쓰기

언어 / 엔진/C++

[C++] 우선순위 큐 정렬하기

헤더 #include 기본 priority_queue pq; //내림차순 priority_queue pq; //내림차순 priority_queue pq; //오름차순 커스텀 정렬 #include struct compare { bool operator()(int a, int b) { retuern a > b; } }; priority_queue pq;