반응형 분류 전체보기123 C# 코딩연습 - Generic 프로그래밍 Generic이란 직역해보면 "일반적인"이다. 그렇다면 프로그래밍에서 "일반적인 함수"란 무엇일까? 그 전에 "일반화"란 무엇일까? 네이버 사전에는 "여러 개체들이 가지고 있는 공통된 특성을 부각시켜 한 개념이나 법칙을 성립시키는 과정."라고 되어있다. 그렇다면 이 주제의 프로그래밍 내용에서는 일반화를 서로 다른 것들의 공통점을 찾아내서 함수, 클래스로 만드는 것."이란 개념으로 접근해보면 되겠다. 곧바로 예제를 보면 쉽게 알 수 있다. // 임의 타입의 단수 매개변수 하나 입력 static void GenericPrint(T data) { // 입력된 값 출력 Console.WriteLine("data : {0}", data); } // 임의 타입의 배열 매개변수 입력 static void Generi.. 2020. 11. 22. C#코딩 연습 - Indexer Indexer는 클래스나 구조체의 인스턴스를 배열처럼 인덱싱하게 해준다. 아래의 예제에서 this[int index]가 그 핵심 코드이다. this 객체에 배열과 같은 접근을 허용하면서 내부의 data 배열에서 하나의 값을 return 하거나 입력 해준다. class LH2Demo_Indexer { // 배열의 크기 private const int MAX = 10; // 배열 생성 private int[] data = new int[MAX]; // Indexer public int this[int index] { get { // 입력 index가 허용 법위인지 검사 if (index = MAX) { throw new IndexOutOfRangeException(); } else .. 2020. 11. 21. C#코딩연습 - 클래스 연습 오늘은 클래스의 상속과 인스턴스 관리에 대한 연습을 해봤습니다. Babarian, Giant, Healer의 인스턴스들을 관리하는 UnitControl 클래스와 이에 대한 구현이 본 내용의 핵심입니다. 오늘까지 강의 수강 진행률이 거의 40%. 화이팅~! class Army { protected int _HP; protected int _MP; protected int _Speed; protected int _Attack; public virtual void Run() { Console.Write("Speed : {0}, ", _Speed); } public virtual void Attack() { // 줄내림 Console.WriteLine(); // Console.Write("Att : {0}, ".. 2020. 11. 18. C# 코딩 연습 - 확장 메서드 오늘은 C# 확장 매서드를 공부했습니다. 이거 참 신기한 기능이네요. class AA { public void PrintAA(string str) { Console.WriteLine("PrintAA {0}", str); } } static class Util { public static void Print(this AA aa, string str) { aa.PrintAA(str); } public static void Sum(this int a) { Console.WriteLine("{0} + {1} = {0}", a, a, a + a); } } class Program { static void Main(string[] args) { AA aa = new AA(); Util.Print(aa, "Hello.. 2020. 11. 15. 이전 1 ··· 23 24 25 26 27 28 29 ··· 31 다음 반응형