일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- dp 알고리즘
- 프로그래머스
- 충돌위험 찾기
- pccp 기출문제 3번
- LayerMark
- 플레이어 방향전환
- Hp바
- Algorithm
- Back Tracking
- 플레이어 이동
- Unity
- Blend Type
- Ainimation Blending
- pccp 기출문제 2번
- heap tree
- Lv2
- dfs
- C#
- 9375번
- 오브젝트 풀링
- 양과 늑대
- 미로 탈출 명령어
- CSharp #자료구조
- Animation State Machine
- 유니티
- 2D슈팅게임
- pccp 기출문제 1번
- 연속 펄스 부분 수열의 합
- Lv.3
- 백준 c++ 9375번
- Today
- Total
목록Programming/Definition, Etc (12)
주녘공부일지
DataClass PriorityQueue // 데이터 추가해서 사용 public class DataClass { public int cost; public DataClass(int cost) { this.cost = cost; } } // DataClass의 cost를 기준으로 가장 작은 값을 우선으로 두는 우선순위 큐 public class PriorityQueue { private List heap = new List(); public int Count => heap.Count; public void Enqueue(DataClass data) ..
0. 이벤트 (Event) 방송자 : 대리자가 있는 필드 형식으로, 대리자를 호출해 정보를 방송한다는 의미 구독자 : 대리자가 호출할 대상 메서드를 등록하는 형식으로, '+=', '-=' 연산자를 호출해 해당 방송의 청취를 시작 or 중단함 // 대리자 정의 public delegate void PriceChangedHandler(decimal oldPrice, decimal newPrice); public class Stock { string symbol; decimal price; public Stock(string symbol) { this.symbol = symbol; } // 이벤트 대리자 public event PriceChangedHandler PriceChanged; public decim..
대리자(delegate)와 인터페이스(interface)를 비교하기 위해 같은 기능을 하는 간단한 예제를 들고 후술 1) 대리자 (Delegate) https://godgjwnsgur7.tistory.com/122 [C#] 대리자 (Delegate - Action, Func) 대리자 (Delegate) 어떤 메서드를 호출하는 방법을 담은 객체 - C의 함수 포인터 같은 지연 호출 수단 등과 같이 프로그래밍 언어에서 말하는 Callback과 유사 - 제네릭 대리자 형식으로 선언할 수도 godgjwnsgur7.tistory.com ex) 제네릭 형식에 제네릭 형식 매개변수를 둔 예시 public delegate T Transformer (T arg); public class Util { public stat..
대리자 (Delegate) 어떤 메서드를 호출하는 방법을 담은 객체 - C의 함수 포인터 같은 지연 호출 수단 등과 같이 프로그래밍 언어에서 말하는 Callback과 유사 - 제네릭 대리자 형식으로 선언할 수도 있으며, 제네릭 형식 매개변수를 둘 수도 있음 https://godgjwnsgur7.tistory.com/115 [C#] 제네릭 (Generic) 제네릭 (Generic) - 서로 다른 형식들에 대해 재사용할 수 있는 코드를 작성하기 위해 사용하는 메커니즘 - 형식 안정성을 높이고 캐스팅과 박싱을 줄이기 위한 수단이 됨 (일반화, 특수화) + 제네릭 godgjwnsgur7.tistory.com ex) 대리자 인스턴스, 호출, 대리자를 이용한 플러그인 메서드 // 제네릭 대리자 형식 public d..
제네릭 (Generic) - 서로 다른 형식들에 대해 재사용할 수 있는 코드를 작성하기 위해 사용하는 메커니즘 - 형식 안정성을 높이고 캐스팅과 박싱을 줄이기 위한 수단이 됨 (일반화, 특수화) + 제네릭 컬렉션의 자료구조를 부분적으로 직접 구현해 예제로 삼음 https://godgjwnsgur7.tistory.com/46 [C#] 자료구조 ( 제네릭 컬렉션 ) 자료구조(Data Structure)란? 데이터를 효율적으로 접근하고 조작할 수 있게 데이터 구조를 만들어 관리하는 것 - Collections은 C#에서 지원하는 자료구조 클래스 using System.Collections.Generic; 제네릭 컬렉 godgjwnsgur7.tistory.com 1) 제네릭 형식 형식 매개변수를 선언해 사용하는..
1. 열거형(enum type)이란? 수치 상수에 이름을 붙일 수 있는 특별한 값 형식으로 int 형식의 바탕 값 존재 - 바탕 값은 생략 가능 // 0부터 순서대로 자동 배정 ( 0, 1, 2 ... ) - 일부 멤버들에게만 명시적으로 값을 배정하는 것도 허용하는데, 이 경우 가장 최근 명시적으로 배정된 값을 차례로 증가한 값이 배정되며 같은 바탕 값이 배정될 수 있음 public enum BorderSide { None, // = 0 Left, // = 1 Right // = 2 Top = 5, Bottom, // = 6 } int 형식 이외에도 명시적으로 바탕 정수 값을 배정 가능 - byte, sbyte, short, ushort, int, uint, long, ulong public enum B..
1. 인터페이스의 상속 - 인터페이스는 다중 상속이 가능함 + 다중 상속으로 인해 인터페이스의 멤버이름이 충돌할 수 있는데, 이를 해소하는 방법 중 하나는 멤버를 명시적으로 구현하는 것임 ( 후술 - 4번 ) interface I1 { ... } interface I2 { ... } public class A : I1, I2 { ... } // 다중 상속 - 인터페이스가 인터페이스를 상속받는 것도 가능함 ex) IUndoable의 모든 멤버를 상속받는 IRedoable 인터페이스 public interface IUndoable { void Undo(); } public interface IRedoable : IUndoable { void Redo(); } 즉, IRedoable 인터페이스를 상속받는 클래..
1. Object 형식 모든 형식의 궁극적인 기반 클래스로 그 어떤 형식도 Object로 업캐스팅 할 수 있음 ( 참조 형식 ) - C#의 모든 클래스 또는 구조체는 Object 클래스를 암시적으로 상속함 ex) object 형식을 다루는 컬렉션 Stack public class Stack { int position; object[] data = new object[10]; public void Push (object obj) { data[position++] = obj; } public object Pop() { return data[--position]; } } static void Main() { Stack stack = new Stack(); stack.Push("Sample"); string s..
1. 스택(Stack) 메모리 지역 변수들과 매개변수들을 담는 메모리 공간 - 메서드를 기준으로 스택프레임으로 묶여 스택에 저장됨 - 스택 자료구조처럼 쌓이는 구조로 후입선출(LIFO) 방식 ex) 실행의 흐름이 메서드에 진입할 때마다 새로운 int가 스택에 할당되며, 메서드에서 벗어날 때마다 해제 static int Factorial (int x) { if (x == 0) return 1; return x * Factorial (x-1); } 2. 힙(Heap) 메모리 할당된 객체(참조 형식의 인스턴스)들이 저장되는 메모리 공간 - 런타임에서 new 키워드 등으로 인해 할당된 메모리가 할당되는 공간 ex) 새 객체가 생성되면 힙에 객체가 할당되고 더 이상 참조되지 않는 객체들은 가비지 컬렉터가 해제 u..
1. 값 형식 - 인스턴스화 시에 모든 인스턴스를 실제로 할당 - 인스턴스 배정 시 인스턴스가 복사 - 거의 모든 내장 형식, 구조체, 열거형 형식 ex) 수치(int, float, etc), 논리(bool), 문자(char), etc // 값 형식 구조체 public struct Point { public int X, Y; } static void Main() { Point p1 = new Point(); p1.X = 7; Point p2 = p1; // 배정에 의해 복사 Console.WriteLine(p1.X); // 7 Console.WriteLine(p2.X); // 7 p1.X = 9; Console.WriteLine(p1.X); // 9 Console.WriteLine(p2.X); // 7 ..