C# - 스택

2025. 2. 11. 23:23·코드 및 공부/이론

유니티 버전 - 6000.0.37f1

 

 

 

 

 

목차


  • 스택의 기본 원리
  • 스택의 구현

 

 

 

 

 

스택의 기본 원리


스택이란 데이터를 저장하는 선형 자료구조의 한 종류로, 한쪽 끝에서만 데이터를 추가하거나 제거 할 수 있습니다, 마지막에 추가된 요소가 가장 먼저 제거되는 LIFO 구조입니다

 

아래는 스택의 공식문서입니다

더보기

https://learn.microsoft.com/ko-kr/dotnet/api/system.collections.generic.stack-1?view=net-8.0

 

Stack<T> 클래스 (System.Collections.Generic)

동일한 지정된 형식의 인스턴스에 대한 LIFO(Last-in-First-out) 컬렉션의 변수 크기를 나타냅니다.

learn.microsoft.com

 

 

 

 

 

 

스택의 구현


스택은 다음과같이 선언할 수 있습니다

private Stack<T> variableName = new Stack<T>();
// <T>에 스택이 저장할 데이터의 타입을 명시

 

 

 

.Count()


현재 스택에 채워진 요소의 총 개수를 반환합니다

private readonly Stack<PopupUI> _popupsStack = new Stack<PopupUI>();

_popupsStack.Push(popupUI);
_popupsStack.Push(popupUI);
_popupsStack.Push(popupUI);

Debug.Log(_popupsStack.Count);

 

 

 

.Clear()


스택의 모든 요소를 제거합니다

 private readonly Stack<PopupUI> _popupsStack = new Stack<PopupUI>();

_popupsStack.Push(popupUI);
_popupsStack.Push(popupUI);
_popupsStack.Push(popupUI);

Debug.Log(_popupsStack.Count);
 
 _popupsStack.Clear();
        
Debug.Log(_popupsStack.Count);

 

 

 

 

.Push()


스택의 최상단 (top)에 새로운 요소를 추가합니다

_popupsStack.Push(popupUI);

 

 

 

.Pop()


스택의 최상단 요소를 제거하거나 반환해줍니다

_popupsStack.Pop();

PopupUI popup = _popupsStack.Pop();

 

 

 

 

Peek() 


스택의 최상단 요소를 제거하지 않고 조회합니다

스택의 최상단 요소를 유지한채, 조회로 반환된 요소를 이용하여 작업을 수행 할 수있습니다

 

PopupUI popupUI = _popupsStack.Peek();
                
popupUI.SomeMethod();

 

'코드 및 공부 > 이론' 카테고리의 다른 글

async' 한정자는 본문이 있는 메서드에서만 사용할 수 있습니다  (0) 2025.04.15
디자인 패턴 - 싱글톤 패턴(프로퍼티를 이용한 null 체크)  (1) 2024.10.22
디자인 패턴 - 싱글톤 패턴  (0) 2024.09.14
'코드 및 공부/이론' 카테고리의 다른 글
  • async' 한정자는 본문이 있는 메서드에서만 사용할 수 있습니다
  • 디자인 패턴 - 싱글톤 패턴(프로퍼티를 이용한 null 체크)
  • 디자인 패턴 - 싱글톤 패턴
ekrxjvpvj0110
ekrxjvpvj0110
유니티 개발 관련 자료
  • ekrxjvpvj0110
    ekrxjvpvj0110의 유니티 개발
    ekrxjvpvj0110
    • 전체 글 (73)
      • 코드 및 공부 (72)
        • 이론 (4)
        • 데이터 관리 (11)
        • 입력 관리 (9)
        • 최적화 (10)
        • UI (2)
        • 통신 (0)
        • 카메라 (3)
        • 오디오 (3)
        • 물리 (3)
        • 씬 (6)
        • 기타 (21)
        • 분류없음 (0)
  • 인기 글

  • hELLO· Designed By정상우.v4.10.3
ekrxjvpvj0110
C# - 스택
상단으로

티스토리툴바