일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 충돌 알고리즘
- 벡터
- Doubly Connected Edge List
- 다이나믹 프로그래밍
- GJK
- 외적
- Vector
- SOH
- 분할축 이론
- 보로노이다이어그램
- AABB
- PS
- 리눅스
- dp
- c#
- ubuntu
- Expanding Polytope Algorithm
- C++
- 우분투
- Unity
- 문제풀이
- C
- 유니티
- 내적
- linux
- Graham Scan
- 수학
- 알고리즘
- uclidean algorithm
- 백준
- Today
- Total
목록c# (2)
마이 플밍 블로그
GC란? 다들 알다시피 C#은 C나 C++과 달리 직접 메모리 해제를 할 필요가 없다. 이렇게 할 수 있는 이유로는 Garbage Collector라는 것이 있기 때문인데 이것은 CLR(Common Language Runtime, 공용 언어 런타임)에서 자동메모리 관리기능을 한다. GC덕에 우리는 메모리 관리 부담을 덜하면서 개발할 수 있다. 1. CLR의 메모리 할당 C#에서의 할당을 보자면 소스코드 컴파일 후 실행하면 CLR에선 일정 크기의 메모리를 확보하게된다. 이렇게 관리되는 Heap 메모리 영역을 Managed Heap라고 한다. 이렇게 확보한 Managed Heap의 첫번째 주소에 다음 객체를 할당할 메모리 주소를 메모리의 포인터로 가리킨다. 객체를 생성하게 된다면 포인터가 가리키고 있는 주소..
간혹 프로그램을 작성하다 보면 특정 클래스에 메서드를 추가하고 싶은 경우가 있다. 그게 내가 만든 클래스라면 직접 파일을 열어서 추가하면 되지만 외부 라이브러리를 사용할 시 직접 수정하지 못하게 막아놓은 경우도 있을 것이다. 그럴 경우에 사용하면 되는 것이 확장메서드이다. 확장메서드를 사용할 시 클래스 내부가 아닌 외부에서 메서드를 정의함으로서 기존 형식의 코드변경 없이 외부에서 대상 형식에 메서드를 추가할 수 있다. 확장메서드 만들기 확장메서드는 static클래스 안에서 static 메서드로 정의된다. public static class ExtensionMethod { public static void TestExtensionMethod1(this string a) { Console.WriteLine(..