language:csharp:프로그래밍-가이드
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
| language:csharp:프로그래밍-가이드 [2013/09/02 15:24] – 새로 만듦 kieuns | language:csharp:프로그래밍-가이드 [2024/04/23 22:44] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| + | ====== 프로그래밍 가이드 ====== | ||
| + | |< 90% >| | ||
| + | | [[http:// | ||
| + | | [[http:// | ||
| + | |||
| + | 코드는 [[language: | ||
| + | |||
| + | ====== 문법 ====== | ||
| + | |||
| + | ===== 람다 ===== | ||
| + | |||
| + | * 익명함수. 델리게이트와 유사하지만 .. | ||
| + | * C#에서 델리게이트 함수를 넣기 애매한 곳에 인자로 받도록 구성되어 있다. | ||
| + | * REF : [[https:// | ||
| + | |||
| + | * List.FindIndex(Predicate< | ||
| + | |||
| + | <code csharp> | ||
| + | List< | ||
| + | abc.FindIndex( x => x == 5 ); // 리스트에서 5와 같은 인덱스를 찾는다. | ||
| + | </ | ||
| + | |||
| + | * 표현 식< | ||
| + | |||
| + | <code csharp> | ||
| + | // | ||
| + | // (input parameters) => expression | ||
| + | // | ||
| + | |||
| + | x => x == 5 // 하나의 입력값이면 이렇게. | ||
| + | | ||
| + | (x, y) => x == y // 둘 이상의 입력 매개 변수는 다음과 같이 괄호로 묶고 쉼표로 구분해야 합니다 | ||
| + | | ||
| + | (int x, string s) => s.Length > x // 입력값의 타입 유추가 어려운 경우, 타입을 알려줄 수 있다 | ||
| + | | ||
| + | () => SomeMethod() // 입력값이 없다면 빈괄호를 추가 | ||
| + | </ | ||
| + | |||
| + | ==== _ 는 뭣인가? ==== | ||
| + | |||
| + | * 람다 함수식에서 사용 되며, 파라미터에 신경 쓰지 않겠다는 뜻. 그냥 %%()%% 쓰나 %%_%% 쓰나... | ||
| + | ===== enum ===== | ||
| + | |||
| + | <code csharp> | ||
| + | // public 이 기본인가? | ||
| + | // | ||
| + | public enum OpType : int { | ||
| + | BEGIN, PLUS, MINUS, MULTIPLY, END | ||
| + | }; | ||
| + | |||
| + | // enum < | ||
| + | // 타입을 추가하여도 사용할 때는 타입 캐스팅이 필요하다. | ||
| + | // | ||
| + | int now_optype = (int)OpType.MINUS; | ||
| + | </ | ||
| + | |||
| + | ==== enum Length ==== | ||
| + | |||
| + | <code csharp> | ||
| + | var myEnumMemberCount = System.Enum.GetNames(typeof(MyEnum)).Length; | ||
| + | </ | ||
| + | ===== interface, abstract, class ===== | ||
| + | |||
| + | * 개념 정리 참고 : [[http:// | ||
| + | |||
| + | 인터페이스 | ||
| + | |||
| + | * 가장 기본적으로 가질 수 있는 공통 메소드를 포함하는 것 | ||
| + | * 일반 클래스에서 상속해서 사용 | ||
| + | |||
| + | * 함수 원형 선언 가능 | ||
| + | * 변수선언, | ||
| + | | ||
| + | |||
| + | 추상클래스 | ||
| + | |||
| + | * 하는 일은 비슷하지만 구현 내용이 다를때 | ||
| + | |||
| + | * 변수 선언 가능 | ||
| + | * 함수 정의 가능 | ||
| + | * 함수 원형만 선언 가능 | ||
| + | |||
| + | ==== 상속 관계 ==== | ||
| + | |||
| + | | 인터페이스 | -> | 인터페이스 | 가능 | ||
| + | | ::: | -> | 추상클래스 | 가능 | ||
| + | | ::: | -> | 일반클래스 | 가능 | ||
| + | | 추상클래스 | -> | 일반클래스 | 가능 | ||
| + | | ::: | -> | 추상클래스 | 가능 | ||
| + | | 일반클래스 | -> | 추상클래스 | 가능 | ||
| + | | ::: | -> | 일반클래스 | 가능 | ||
| + | | 추상클래스 | -> | 인터페이스 | 불가능 | | ||
| + | | 일반클래스 | -> | 인터페이스 | 불가능 | | ||