C#

    [C#] 대리자(Delegate)

    [C#] 대리자(Delegate)

    C#에서 대리자는 콜백(Callback)을 구현하기 위해 사용됩니다. 콜백이란 어떤 일을 해줄 코드를 만들고, 이 코드가 실행할 이벤트 코드는 컴파일 시점이 아닌 프로그램이 실행 중인 시점에 부여하는 식입니다. 객체의 주소를 가리키는 "참조"를 제가 전 게시물에서 소개한 적이 있을 겁니다. 대리자는 메소드에 대한 참조입니다. 대리자에 메소드의 주소를 할당한 후 대리자를 호출하 이 대리자가 메소드를 호출해 줍니다. 즉, 대리자(Delegate)는 메소드를 참조하는 객체입니다. 대리자는 메소드를 변수에 할당하거나 매개변수로 전달하거나 반환값으로 사용할 수 있습니다. 대리자는 델리게이트 타입을 선언하여 사용합니다. 델리게이트 타입은 반환형과 매개변수를 지정하여 선언합니다. 예를 들어, int를 반환하고 int..

    [C#] C#에서 예외 처리 구현 간단하게

    [C#] C#에서 예외 처리 구현 간단하게

    예외 처리는 코드 실행 도중 발생할 수 있는 예기치 않은 상황에 대응하기 위한 메커니즘입니다. 이러한 예외 상황은 프로그램의 실행을 중단시킬 수 있는데, 예를 들어 파일이 존재하지 않는 경우나 연산이 불가능한 경우 등이 있습니다. 이러한 상황에 대처하려면 예외 처리를 해야 합니다. C#에서 예외 처리는 try-catch-finally 블록을 사용하여 구현합니다. try 블록 안에는 예외가 발생할 가능성이 있는 코드를 작성합니다. catch 블록 안에는 예외가 발생했을 때 처리할 코드를 작성합니다. finally 블록은 try 블록에서 실행된 코드 이후에 항상 실행되는 코드 블록입니다. 예를 들어, 다음 코드는 파일을 읽어 들이는 코드입니다. try { StreamReader reader = new Str..

    [C#] 컬렉션

    [C#] 컬렉션

    컬렉션(collection)이란, 같은 성격을 띠는 데이터의 모음을 담는 자료 구조를 말합니다. 위의 설명에서 컬렉션만 배열로 한번 바꿔 보면 배열 설명과 정의가 같습니다. 그렇습니다! 배열도 .NET 프레임워크가 제공하는 다양한 컬렉션 자료 구조의 일부입니다. .NET 프레임워크는 배열 말고도 멋진 컬렉션 클래스들을 여러 개 제공합니다. 그중 네 개를 살펴보며 컬렉션에 대해 설명을 붙이겠습니다.(。・∀・) ノ゙ ArrayList Queue Stack Hashtable 코드 쓰기 전에 using System.Collections; 하는 거 잊지 말기!! ᕦ(ò_óˇ)ᕤ 1. ArrayList ArrayList는 가장 배열과 닮은 컬렉션이라 할 수 있습니다. 컬렉션의 요소에 접근할 때는 [ ] 연산자를 이..

    C++, C# 에서 "call by reference" , "pass by reference"

    C++, C# 에서 "call by reference" , "pass by reference"

    C++에서는 "call by reference"와 "pass by reference"를 구분하여 사용하지 않고, 둘 다 "참조에 의한 호출(call by reference)"이라는 용어를 사용합니다. C#에서는 "pass by reference"를 "참조에 의한 전달"이라는 용어로 사용하고, "call by reference"를 "참조에 의한 호출"이라는 용어로 사용합니다. 즉, C#에서는 "pass by reference"와 "call by reference"를 구분하여 사용합니다. 하지만 C++에서는 둘 다 "참조에 의한 호출"로 통용되며, 구분하여 사용하지 않습니다. 언어마다 쓰는 매개 변수 키워드가 다르다 C++에서는 "call by reference"를 사용할 때 매개 변수 앞에 & 기호를 사용..