c# 속성
[C#] 인덱서 (Indexer)
1. 핵심 정리 using System; class Sentence { private string[] words = null; public Sentence(string s) { words = s.Split(); } } class Program { public static void Main() { Sentence s = new Sentence("Dog is Animal"); s[0] = "Cat"; Console.WriteLine(s[0]); // Cat Console.WriteLine(s); // Cat is Animal } } ① 객체를 배열 처럼 사용할 수 있게 하는 문법 => C++에서 [ ] 연산자 재정의 => 속성(Property)와 유사한 문법 using System; class Sentenc..
[C#] 속성 (Property) (2)
1. 핵심 정리 using System; class People { private int age = 0; public int Age { get { return age; } // protected set { age = value; } - 생략 가능 } } class Program { static void Main() { People p = new People(); // p.Age = 10; - error Console.WriteLine(p.Age); } } ① setter / getter 의 접근 권한을 변경할 수 있다. ② 읽기 전용 또는 쓰기 전용 속성을 만들 수도 있다. ③ Backing 필드가 없는 속성을 만들 수 도 있다. Backing 필드란? 위의 코드에서 Age는 결국 age필드에 접근하기 ..