as Keyword 타입 캐스팅 시 성공하면 캐스팅 된 값을 반환하고 실패하면 null 값을 반환 as를 사용할 때는 null을 받을 수 있는 타입을 사용해야 한다. class Weapon { } class Player { public void Attack(object weapon) { Weapon myWeapon = weapon as Weapon; } } class Program { static void Main(string[] args) { Player p = new Player(); Weapon sword = new Weapon(); p.Attack(sword); } } is Keyword as Keyword가 캐스팅 된 값을 반환한다면 is Keyword는 캐스팅 가능 여부를 bool 값으로 반환..
nullable 데이터 타입 일반적인 데이터 타입은 어떤 값이든지 꼭 가지고 있어야 하지만 변수 자체가 null 값을 가질 수 있어야 하는 경우가 있는데 이럴 때 사용할 수 있는 데이터 타입이다. 변수 선언 시 데이터 타입 뒤에 ?를 붙여 주기만 하면 null 값을 저장할 수 있게 된다. ex) int? num = null; var Keyword C++ 11의 auto Keyword처럼 C#에도 데이터 타입을 자동으로 지정해주는 var 이라는 키워드가 있다. var num = 10; // 변수 선언 시 데이터 타입이 들어갈 위치에 사용해 주면 된다. 아래 코드처럼 nullable 과는 동시 사용이 불가능하다. var? num = 10; (x) var? num = null; (x)