<stack과 heap>

C#/과제 2019. 3. 24. 14:48

stack

자료구조의 한 종류, stack방식(배운적 있었음! ㄴㅇㄱ 상상도 못한 정체)

LIFO(Last In First Out) 형태로//반대는 FIFO(First In First Out)방식

가장 먼저 들어간 게 마지막에 나오고, 가장 늦게 들어간게 가장 먼저 나오는

U형 비커에 순서대로 차곡차곡 쌓는 방식 대표적인 자료구조 = LinkedList!


프로그램이 자동으로 사용하는 임시 메모리 영역

지역변수 매게변수 리턴값 등등 사용되었다가 사라지는 데이터를 저장하는 영역

메서드 호출 시 생성되고 메서드가 끝나면 시스템에 반환됨

스텍의 사이즈는 바꿀 수 없음(동적할당)


//동적할당 프로그램이 실행된 후에 변수의 크기를 결정하는 것




heap

힙메모리에는 주소가 아닌, 실질적인 값이 들어감

동적으로 메모리를 할당하고 싶을때 사용하는 동적 데이터 영역, 메모리 주소값에 의해서만참조되고 사용되는 영역

이 영역에 데이터를 쓰기 위해서는 int i=new int();형식을 사용함.

동적할당은 자동으로 해제되지 않기때문에 직접 delete 해야합니다.

//제대로 이해한지 잘 모르겠지만, heap은 c++때 배웠던 동적할당을 뜻하는 듯 하다.
//월요일날 학원가서 애들하고 서로 이해한게 맞는지 대화를 좀 해봐야겠다 끗.


https://guslabview.tistory.com/186

https://dsnight.tistory.com/50

https://sfixer.tistory.com/entry/%EB%A9%94%EB%AA%A8%EB%A6%AC-%EC%98%81%EC%97%ADcode-data-stack-heap

: