본문 바로가기
반응형

유니티 공부/C# 문법48

C# 문법 - 인스턴스 생성을 위한 new 키워드 new 키워드로 인스턴스를 생성하면 해당 인스턴스는 힙메모리에 할당되며 생성된 인스턴스에 대한 참조를 반환한다. 이렇게 생성된 인스턴스는 명시적으로 메모리에 제거되지 않는 한 사용가능하다. 사용 예시 01 객체 인스턴스 생성 클래스 또는 구조체등의 타입으로부터 객체의 인스턴스를 생성한다. class Piggy { public string name {get;set} } Piggy pig = new Piggy(); 02 배열 인스턴스 생성 int[] weights = new int[3]; 03 제네릭 타입 인스턴스 생성 List weights = new List(); 04 새로운 문자열 생성 문자열은 변경할 수 없는(immutable)이기 때문에 복사본을 새로 만들어 수정하는 경우에 사용된다. char ch.. 2023. 12. 14.
C# - 파라미터 전달방식(ref, out, in 키워드), Pass by Value(값에 의한 전달) 및 Pass by Reference(참조에 의한 전달) 1. Pass by Value(값에 의한 전달) 파라미터 "값"을 복사해서 파라미터 값 자체를 복사해서 전달하는 방식이다. 만약 몰래 소주를 마셔서 이를 물로 채워넣는다는 예시로 코드를 작성해보자 class change { public void changeToWater(int leftsoju) { int water = 100; leftsoju = water; } } public static void Main() { int leftvalue = 0; // 소주를 다 마신 상태 chang Change = new chang(); Change.changeToWater(leftvalue) // 마신 소주에 물 넣기 Console.WriteLine(leftsoju); } 값을 복사해서 전달하기 때문에 weight2.. 2023. 12. 14.
C# - INotifyPropertyChanged 인터페이스 INotifyPropertyChanged 인터페이스 객체가 속성의 변경을 클라이언트에게 알리고, UI가 동적으로 업데이트되도록 할 수 있다. public interface INotifyPropertyChanged PropertyChangedEventArgs 클래스 INotifyPropertyChanged 인터페이스에서 속성이 변경될 때 알리기 위해 사용되는 이벤트의 인자로 전달되는 클래스이다. 주로 PropertyChanged이벤트에 사용되며 어떤 속성이 변경되었는지를 나타내는 데에 활용된다. PropertyChanged 이벤트 public event PropertyChangedEventHandler PropertyChanged; PropertyChanged이벤트는 데이터 모델의 속성이 변경될 때마다 발.. 2023. 11. 19.
C# 문법 - Dispose 패턴 예전에 using문에 대해서 공부해서 Dispose메서드에 알고 있기는 했지만 더 자세히 알고 싶어서 게시글을 적게 됐다. using문 Unity - using문(using directive , using statement) 1. using directive 파일 상단에 namespace를 불러오는데 사용된다. using UnityEngine; using System.Collections; using System.Collections.Generic; 2. using statement using문을 사용하면 Resource를 사용한 후에 자동으로 정리 및 code-piggy.tistory.com Dispose패턴 관리되는 리소스와 비관리 리소스를 효과적으로 관리하기 위한 디자인 패턴으로 주로 IDispos.. 2023. 11. 17.
C# - LinkedListNode 개념, 프로퍼티, 메서드 설명 LinkedListNode LinkedList의 노드를 나타낸다. 리스트 내의 요소간의 연결 정보와 현재 노드값을 저장한다. LinkedListNode 프로퍼티 01 Value 노드에 저장된 값을 가져오거나 설정한다. LinkedList list = new LinkedList(new[] { 1, 2, 3, 4 }); LinkedListNode node = list.Last; int value = node.Value; // 4 반환 02 Next 현재 노드의 다음 노드를 가져오거나 설정한다. 다음 노드가 없는 경우 null이다. LinkedList list = new LinkedList(new[] { 1, 2, 3, 4 }); LinkedListNode node = list.First; LinkedList.. 2023. 9. 22.
C# - LinkedList 개념, 프로퍼티, 메서드 설명 LinkedList 이중 연결 리스트를 구현한 컬렉션 클래스이다. 노드 삽입, 삭제 O(1), 검색 O(N) LinkedList 상세 설명 알아보러가기 C# - 배열, 동적 배열, 연결 리스트 비교 선형 구조 자료를 순차적으로 나열한 형태 ex) 배열, 연결 리스트, 스택 / 큐 비선형 구조 하나의 자료 뒤에 다수의 자료가 올 수 있는 형태 ex ) 트리, 그래프 배열(Array) 고정된 크기의 메모리 블록 code-piggy.tistory.com LinkedList 프로퍼티 01 First.Value 리스트의 첫번째 요소 가져오기 LinkedList list = new LinkedList(new[] { 1, 2, 3, 4 }); Console.WriteLine(list.First.Value); // 1.. 2023. 9. 20.
반응형