블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2307)
Unity3D (564)
Programming (470)
Unreal (4)
Gamebryo (56)
Tip & Tech (182)
협업 (34)
3DS Max (3)
Game (12)
Utility (114)
Etc (92)
Link (31)
Portfolio (19)
Subject (90)
iOS,OSX (37)
Android (12)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (1)
Memories (19)
Interest (37)
Thinking (36)
한글 (26)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (19)
Exercise (3)
나만의 맛집 (2)
냥이 (9)
육아 (5)
Total1,331,910
Today13
Yesterday172
Statistics Graph

달력

« » 2019.10
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

공지사항

태그목록

'AS'에 해당되는 글 1건

  1. 2010.07.21 is 와 as

is 와 as

Programming/C# / 2010.07.21 19:39

캐스팅을 하는 일반적인 방법은 다음과 같이 ()를 사용하는 것이다.

 
  1. var num = 3.0;   
  2. var bnum = (byte)3.0; // bnum = 3  

위 방법은 편하지만 안전하지는 않다. 엉뚱한 타입으로 캐스팅하면 문제 - InvalidCastException 발생 – 가 발생한다. 보다 안전한 방법으로 캐스팅하는 방법은 as를 사용하는 것이다.

 
  1. var ms = stream as MemoryStream;  

만약 stream이 MemoyStream이 아니라면 ms에는null이 할당된다. 가능하다면 as를 사용하는 것이 읽기 편하고 안전하다. as를 사용하는 것이 ()보다 성능도 좋다고 한다. 단 int와 같은 built-in 데이타 타입은 as를 사용할 수 없다.

객체가 어떤 클래스에 속하는지 확인하기 위해서는 어떻게 할까? 그때는 is를 사용할 수 있다.

 
  1. if ( stream is MemoryStream )   
  2. {   
  3.   var pos = stream.Position;   
  4. }  

읽기 편하다. 아주 마음에 든다.

'Programming > C#' 카테고리의 다른 글

[Link] C# 관련 사이트  (0) 2010.07.22
C# 진법전환  (0) 2010.07.22
is 와 as  (0) 2010.07.21
region을 사용해서 코드를 깔끔하게  (0) 2010.07.21
OnDragEnter, OnDragDrop을 이용하여 Drag and Drop된 파일경로 받아오기.  (0) 2010.07.21
C#, 간단한 Developing Tips  (0) 2010.07.21
Posted by blueasa
TAG , ,

댓글을 달아 주세요