본문 바로가기
반응형

전체 글156

[c#] string의 초기화방법(string.empty, "", null) 및 string의 특징 string이 지원하는 기능들중 string.empty, null, "" 와의 차이가 궁금해져 몇가지 확인을 해보았습니다. string을 초기화 시키는 방법에는 대표적으로 3가지가 있습니다. string a = string.Empty; string b = ""; string c = null; null을 지원한다는것을 통해 알수 있듯이 string은 참조타입의 클래스를 사용한 참조자료형 입니다. 즉 a,b는 각각의 메모리를 할당해주고 힙에 비어있는 문자 값을 넣어 놓고 해당 주소를 가르키게 해 놓은것이고 c는 껍데기만 만들어 준 것입니다(new가 없으니 힙 할당을 안하고 깡통주소를 가르키게 됩니다.) 첫번째 확인작업으로 a,b,c의 길이를 출력봤습니다. Console.WriteLine(a.Length); .. 2020. 6. 12.
c# delegate, event 사용법 및 사용예제 1. delegate란 delegate는 메서드 대리자입니다. delegate로 메서드 대리자를 선언해주고 원하는 메서드를 참조시킬수 있습니다. 쉽게말하면 함수를 보관하는 통을 만들고(대리자선언) 그 통안에 함수를 넣고 나중에 통을 가져와서 함수를 실행시키는 방식입니다. 2, 예제 namespace DelegateTest { // 대리자를 만들어준다. delegate void Del(); // 매개변수가 없고 반환형이 void형인 메서드만 참조 시킬 수 있다. class Mng { public void Main() { // myDel이라는 대리자 객체 생성 Del myDel; // Print라는 메서드를 참조해준다. myDel = Print; // 대리자를 이용한 메서드 호출 myDel(); // 메서드.. 2020. 5. 25.
c# 채팅프로그램 만들기 - 1 - 소켓통신(TcpListener, TcpClient)을 이용한 간단한 1:1 통신을 해보자(동기서버, 클라이언트, 단발성) c# 채팅프로그램을 검색해보면 좋은자료가 많긴 하지만 설명이 부족해 처음 접근할때 난이도가 너무 높거나 한두개의 게시글만 올리고 완성품이 없는경우도 많아 아쉬운적이 많았습니다. 그래서 최대한 쉽게 c#과 wpf를 통해 채팅프로그램을 구현해 포스팅하려고합니다. c#은 윈도우애플리케이션을 만들때 많이 사용되고(윈폼, WPF) 윈도우앱은 장비나 병원등에서 많이 사용되며 장비들과의 인터페이스로는 소켓통신을 많이 사용하니 만들어보시면 도움이 되실 것 같습니다. Tcpclient와 TcpListener를 통해 구현 할 예정이며(개념만 알면 Socket클래스도 거의 비슷합니다) 총 12개의 게시글로 구현할 예정입니다. 첫번째 게시글 : 1:1단발성통신(동기서버 동기클라) 두번째 게시글 : 1:1지속성통신(동기서버 완.. 2020. 5. 25.
반응형