
Delegate 대리자특정 parameter/return 타입의 함수를 reference 하여 나타내며 대리자라고 불린다.invoke(call) 하게 되면 delegate 인스턴스에 reference 된 함수 (혹은 함수들)을 부를 수 있다.delegate는 함수를 parameter로 전달 할 수 있게 한다.Callback 함수에 사용 된다.다양한 함수를 하나의 delegate에 reference 할 수 있다.Action, Actionparameter type 에 따른 delegateFunc, Funcreturn type에 따른 delegate.parameter type이 차례로 오고 마지막이 return type.lambda 식에서 괄호 안에 parameter를 입력. Eventevent를 구독한 ob..
Interface 인터페이스Class의 규약을 정의한다.상속 받는 Class는 Overriding을 강제 당하고 Interface에 정의된 규약을 구현 해야 한다.모든 것이 public으로 선언되고 Access modifier를 사용할 수 없다.규약을 정의하지만 구현부는 없고 Instance를 만들 수 없다.Abstract Modifier 추상 클래스abstract 키워드는 class가 상속 받는 class들의 base class로 만들어졌고 없는 부분이 있거나 불완전 구현이 있음을 나타낸다.abstract class는 인스턴스로 만들수 없다.class, method, property, indexer, event에 사용될 수 있다.abstract method는 하위 class에서 구현되어야 한다.

Integral numeric types 정수형sbytesigned 8bit-128~127byteunsigned 8bit0~255 숫자 표현shortSystem.Int16-32,768~32,767 숫자 표현signed 16bitushort0~65,535 숫자 표현unsigned 16bitintSystem.Int32signed 32bit약 -21억 ~ 21억 숫자 표현uintunsigned 32bit0~약 42억 숫자 표현Floating-point numeric types 실수형floatSystem.Single4byte (32bit)7 유효자릿수doubleSystem.Double8byte (64bit)15~16 유효자릿수Character types 문자형char‘ 작은 따옴표 사용System.Char유니코..
C#에서 delegate는 C++의 함수포인터와 유사한 역할을 하는 메소드를 대신하여 호출하는 변수이다. delegate로 메소드를 호출하려면 함수를 선언하듯이 동일한 파라미터와 리턴타입을 가지도록 선언하면 된다. 그리고 선언한 delegate 타입의 변수를 생성하고 new 키워드를 써서 delegate 객체를 생성하여 메소드를 참조 시킨다. delegate int MyDelegate(int a); Mydelegate del_func; del_func = new MyDelegate(func); public static int func(int n) { ... }; delegate는 메소드를 호출할 때 파라미터 내의 또 다른 메소드를 호출하는 Callback 메소드를 구현할 때 의미가 있다. delegate..
클래스 안에서 코드 블럭을 실행시키는 함수를 메소드라 한다. 파라미터를 가질 수 있고 리턴값을 가질 수 있다. 메소드 명 앞에 리턴타입에 public이나 private같은 접근 제한자를 둘 수 있다. C#은 메소드에 파라미터를 전달할 때 값을 복사해 전달하는 Pass by Value 방식을 따른다. C++의 &와 같은 ref 키워드를 통해 Pass by reference 참조 전달을 할 수 있다. 이와 비슷한 기능으로 C# out 키워드가 있다. out을 사용하는 파라미터는 메소드 내에서 그 값을 반드시 지정하여 전달하게 되어 있는데 이 값은 초기화 할 필요가 없다. //ref static double Getdata(ref int a, ref double b) { return ++a, * ++b; } /..
C#은 .NET Framework의 Exception 메카니즘에 따라 예외 처리를 한다. System.Exception이 Base 클래스이다. Exception이 발생했는데 처리하지 않으면 Crash를 일으킨다. try, catch, finally 라는 키워드를 사용하며 throw 키워드를 통해 Exception을 던질 수 있다. try 블럭 내에서 프로그램이 실행되면서 어떤 에러가 발생하면 catch 문에서 잡히게 된다. finally는 try 블럭에서 예외 발생에 관계없이 마지막에 무조건 실행되는 영역이다. 주로 자원을 해제하거나 파일을 닫을때 사용된다. throw문에서 던지는 Exception은 (1) Exception 객체를 쓰거나 (2) new MyException()과 같이 새 Exceptio..
C#에서는 C++와 같이 for문으로 루프를 실행한다. foreach문은 배열이나 컬렉션에서 주로 사용하는데 성능적 측면에서 for가 약간 빠를 수 있지만 대부분의 경우 차이는 크지않다. foreach는 다중배열을 단 한문장으로 처리할 수 있어서 편하다. //for문 for(int i=0 ; i < arr.GetLength(0) ; i++) { for (int j=0 ; j < arr.GetLength(1) ; j++) { Debug.WriteLine(arr[i, j]); } } //foreach문 foreach(var s in arr) { Debug.WriteLine(s); } C#의 yield 키워드는 Enumerator(Iterator)라고 불리우는 기능으로 컬렉션 데이터를 하나씩 리턴할 때 사용한..
C# 변수는 메소드 안에서 선언 된 로컬변수나 클래스 내에서 멤버들이 사용하는 변수인 필드로 선언된다. 필드는 객체가 살아있는 한 메모리 해제되지 않고 다른 메소드들에서 필드를 참조할 수 있다. 로컬 변수는 사용 전에 할당값을 받아야 하고 그대로 출력하려하면 컴파일 에러가 발생한다. 필드는 해당 타입의 기본값이 자동으로 할당된다. ex) int는 0 변수 이름에서 대소문자를 구별한다. 초기에 정한 변수를 변경할 수 없도록 하는 상수는 const로 사용해 정의한다. 또는 readonly 키워드를 사용해 읽기 전용 필드를 만들 수도 있다. 컴파일 시 값이 결정되는 const와 달리 런타임 시 값이 결정된다. C#에서의 배열은 C++와 같이 첫번째 요소가 인덱스 0을 가지는 Zero-based Array이다...
- Total
- Today
- Yesterday
- dfs
- range based for
- 이진 변환 반복하기
- 유니티기초
- STL
- 팩토리메서드패턴
- 코딩테스트
- Event
- modern C++
- C++
- 프로그래머스
- 힙영역
- STL컨테이너
- 카카오코딩테스트
- unity6
- 알고리즘
- UnionFind
- trailing return type
- C#
- initializer_list
- 빌더패턴
- delegate
- 유니온파인드
- emplace
- 유니티6
- 문자열정수변환
- Algorithm
- 스택영역
- 유니티
- ModernC++
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |