"CSharp"의 두 판 사이의 차이

wwiki
이동: 둘러보기, 검색
(Generics)
(Events)
 
(같은 사용자의 중간 판 11개는 보이지 않습니다)
1번째 줄: 1번째 줄:
 +
https://docs.microsoft.com/ko-kr/dotnet/csharp/
 +
 
== C# concepts ==
 
== C# concepts ==
  
23번째 줄: 25번째 줄:
 
==== Collections ====
 
==== Collections ====
  
==== Covariance and contravariance ====
+
====[[Covariance and contravariance]](공변성과 반공변성) ====
  
 
==== [[Expression trees]] ====
 
==== [[Expression trees]] ====
43번째 줄: 45번째 줄:
 
=== Interface ===
 
=== Interface ===
  
=== Delegates ===
+
===[[Delegates]]===
  
 
=== Arrays ===
 
=== Arrays ===
52번째 줄: 54번째 줄:
  
 
=== Events ===
 
=== Events ===
 +
 +
==== 개요 ====
 +
 +
==== [[이벤트를 구독 및 구독취소하는 방법]] ====
 +
[[.NET 지침을 따르는 이벤트를 게시하는 방법]]
  
 
===Generics===
 
===Generics===
58번째 줄: 65번째 줄:
  
 
==== [[Generic Type Parameters]] ====
 
==== [[Generic Type Parameters]] ====
 +
 +
=== [[Constraints on type parameters]] ===
  
 
==== Generic Classes ====
 
==== Generic Classes ====
151번째 줄: 160번째 줄:
 
==== Member access operator and expressions ====
 
==== Member access operator and expressions ====
  
==== Type-testing operators and cast expressions ====
+
====[[Type-testing operators and cast expressions]]====
  
 
==== User-defined conversion operators ====
 
==== User-defined conversion operators ====
236번째 줄: 245번째 줄:
  
 
===== 대리자 형식(delegate) =====
 
===== 대리자 형식(delegate) =====
delegate는 대표(자), 위임하다는 의미를 가지고 있다.
+
<br />
 
 
메서드에 대한 참조를 나타내는 형식이다. 함수 포인터와 달리 delegate는 객체지향적이며 형식이 안전하다.
 
 
 
System.Action 및 System.Func 는 대리자의 일반적인 정의를 제공한다. 대지라는 함수포인터와 유사하여 이벤트의 기반이 된다. 대리자는 메서드(명명된 것)나 무명 메서드와 연결하여 인스턴스화할 수 있다.
 
 
 
대리자는 메서드나 람다식을 사용하여 인스턴스화해야 한다.
 
  
 
=== 한정자 ===
 
=== 한정자 ===
268번째 줄: 271번째 줄:
  
 
====[[CommandLineParser]]====
 
====[[CommandLineParser]]====
 +
[[분류:.net]]

2023년 4월 7일 (금) 00:42 기준 최신판

https://docs.microsoft.com/ko-kr/dotnet/csharp/

목차

C# concepts[편집 | 원본 편집]

How-to C# articles[편집 | 원본 편집]

The .NET Compiler Platform SDK(Roslyn APIs)[편집 | 원본 편집]

C# programming guide[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Inside a c# program[편집 | 원본 편집]

Main() and command-line arguments[편집 | 원본 편집]

Programming concepts[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Asynchronous programming[편집 | 원본 편집]

Attributes[편집 | 원본 편집]

Collections[편집 | 원본 편집]

Covariance and contravariance(공변성과 반공변성)[편집 | 원본 편집]

Expression trees[편집 | 원본 편집]

Interators[편집 | 원본 편집]

Languae-Intergrated Query(LINQ)[편집 | 원본 편집]

Reflection[편집 | 원본 편집]

Serialization[편집 | 원본 편집]

statements, expressions, and operators[편집 | 원본 편집]

Types[편집 | 원본 편집]

Class and Structs[편집 | 원본 편집]

Interface[편집 | 원본 편집]

Delegates[편집 | 원본 편집]

Arrays[편집 | 원본 편집]

Strings[편집 | 원본 편집]

Indexers[편집 | 원본 편집]

Events[편집 | 원본 편집]

개요[편집 | 원본 편집]

이벤트를 구독 및 구독취소하는 방법[편집 | 원본 편집]

.NET 지침을 따르는 이벤트를 게시하는 방법

Generics[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Generic Type Parameters[편집 | 원본 편집]

Constraints on type parameters[편집 | 원본 편집]

Generic Classes[편집 | 원본 편집]

Generic Interfaces[편집 | 원본 편집]

Generic Methods[편집 | 원본 편집]

Generics And Arrays[편집 | 원본 편집]

Generic Delegates[편집 | 원본 편집]

Differences Between C++ Templates and C# Generics[편집 | 원본 편집]

Generics in the Run Time[편집 | 원본 편집]

Generics and Reflection[편집 | 원본 편집]

Generics and Attributes[편집 | 원본 편집]

Namespaces[편집 | 원본 편집]

Unsafe Code and Pointers[편집 | 원본 편집]

XML documentation comments[편집 | 원본 편집]

Exceptions and Exception Handling[편집 | 원본 편집]

File System and the Registry[편집 | 원본 편집]

Interoperability[편집 | 원본 편집]

Language reference[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Configure language version[편집 | 원본 편집]

Types[편집 | 원본 편집]

Value types(값 형식)[편집 | 원본 편집]

Reference types[편집 | 원본 편집]

void[편집 | 원본 편집]

var[편집 | 원본 편집]

Built-in types[편집 | 원본 편집]

Unmanaged types[편집 | 원본 편집]

Default value[편집 | 원본 편집]

Keywords[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Modifiers[편집 | 원본 편집]

Statement Keywords[편집 | 원본 편집]

Method Parameters[편집 | 원본 편집]

Namespace Keywords[편집 | 원본 편집]

Type-testing Keywords[편집 | 원본 편집]

Generic Type Constraint Keywords[편집 | 원본 편집]

Access Keywords[편집 | 원본 편집]

Literal Keywords[편집 | 원본 편집]

Contextual Keywords[편집 | 원본 편집]

Query Keywords[편집 | 원본 편집]

Operators and expressions[편집 | 원본 편집]

Overview[편집 | 원본 편집]

Arithmetic operators[편집 | 원본 편집]

Boolean logical operators[편집 | 원본 편집]

Bitwise and shift operators[편집 | 원본 편집]

Equality operators[편집 | 원본 편집]

Comparison operators[편집 | 원본 편집]

Member access operator and expressions[편집 | 원본 편집]

Type-testing operators and cast expressions[편집 | 원본 편집]

User-defined conversion operators[편집 | 원본 편집]

Pointer-related operators[편집 | 원본 편집]

Assignment operators[편집 | 원본 편집]

Lambda expressions[편집 | 원본 편집]

+ and += operators[편집 | 원본 편집]

- and -= operators[편집 | 원본 편집]

?: operators[편집 | 원본 편집]

!(null-forgiving) operator[편집 | 원본 편집]

?? and ??= operators[편집 | 원본 편집]

=> operators[편집 | 원본 편집]

:: operator[편집 | 원본 편집]

await operator[편집 | 원본 편집]

default value expressions[편집 | 원본 편집]

delegate operator[편집 | 원본 편집]

nameof expression[편집 | 원본 편집]

new operator[편집 | 원본 편집]

sizeof operator[편집 | 원본 편집]

stackalloc expression[편집 | 원본 편집]

switch expression[편집 | 원본 편집]

true and false operators[편집 | 원본 편집]

with expression[편집 | 원본 편집]

Operator overloading[편집 | 원본 편집]

Special characters[편집 | 원본 편집]

Attributes read by the compiler[편집 | 원본 편집]

Preprocessor directives[편집 | 원본 편집]

Compiler options[편집 | 원본 편집]

Compiler errors[편집 | 원본 편집]

C# 6.0 draft specification[편집 | 원본 편집]

C# 7.0-9.0 proposals[편집 | 원본 편집]


단순 형식[편집 | 원본 편집]
열거형 형식[편집 | 원본 편집]
구조체 형식[편집 | 원본 편집]
Nullable 값 형식[편집 | 원본 편집]

null을 허용하지 않는 형식을 T라고 한다면, 이에 대응되는 nullalbe형식 T?가 있다. string?은 string 또는 null값을 보유할 수 있는 형식이다.

튜블 값 형식[편집 | 원본 편집]

참조 형식[편집 | 원본 편집]

클래스 형식[편집 | 원본 편집]
string(UTF-16)[편집 | 원본 편집]
인터페이스 형식[편집 | 원본 편집]
배열 형식[편집 | 원본 편집]
대리자 형식(delegate)[편집 | 원본 편집]


한정자[편집 | 원본 편집]

internal[편집 | 원본 편집]

동일한 어셈블리의 파일 내에서만 액세스할 수 있습니다.

콜렉션[편집 | 원본 편집]

가변크기 컨테이너, Vector, ArrayList, LinkedList, HashSet, Stack, HashMap<key, value>

IEnumerable[편집 | 원본 편집]

foreach, 임의접근이 가능, 내부적으로 Enumerator를 가지고 있다.

IEnumerator[편집 | 원본 편집]

순차접근 가능(MoveNext()), 접근위치를 내부적으로 가지고 있다.

LINQ(Language Integrated Query)[편집 | 원본 편집]

var value = from 익명변수명 in ~

where ...

select 추출할_항목;

라이브러리[편집 | 원본 편집]

CommandLineParser[편집 | 원본 편집]