본문 바로가기

프로그래밍/C#

[C#] 알아서 타입을 지정해주는 var 타입을 사용해보자.

 



 

 

 

 

 

C# Prog.


 

 

처음으로 C#을 공부하면서 포스팅한 것이기에 다소 틀린 내용이 있을 수 있습니다. 그리고, 다른 언어를 알고 계시다는 가정하에 포스팅 하기때문에, 프로그래밍 언어를 처음 공부하시는 분은 다른 글도 참고하시길 바랍니다. 이 글은 <뇌를 자극하는 C# 4.0 프로그래밍>을 참고하였습니다.

 


 스크립트 언어에서나 볼법한 var 타입입니다.

var 타입은 프로그래머가 데이터 타입의 신경쓰지 않아도, 알아서 변수에 있는 값을 판단해서 타입을 인식을 하는 타입인데요. C#에서도 동일하게 지원합니다. 아주 유연해 지겠군요. 하지만, 남용은 금물인 것 아시죠?

 

 기본적으로 데이터 타입의 존재는 원하지 않거나 잘못된 값을 저장하는 것을 방지하기 위한 수단으로 쓰입니다.

 var 타입으로 사용하기 위한 두가지 조건이 있는데요.

1. 지역변수로만 사용가능합니다.

2. 선언과 동시에 초기화를 해야합니다.

 

  간단한 테스트를 해보도록 하죠.

using System;


namespace Test
{
    class Test
    {
        static void Main(string[] args)
        {
            var StringType = "독도는 대한민국 국민의 땅";
            var IntType = 123;

            Console.WriteLine("{0} 타입을 체크합니다. {1}", "StringType", StringType.GetType());
            Console.WriteLine("{0} 타입을 체크합니다. {1}", "IntType", IntType.GetType());
        }
    }
}

 

여기서 보이는 GetType()라는 함수는 해당 변수의 데이터타입을 명시해줍니다. 이 함수는 Object 클래스에서 제공하는 함수인데요. 잠시 살펴보면 GetType 함수 보이시죠?

 

 

 오브젝트 클래스는 모든 클래스들의 최상위의 클래스라고 하네요. 이것도 아마, 오토박싱(Boxing)을 통해서 최상위 클래스인 Object 의 함수와 속성을 상속받고, 그대로 함수를 사용할 수 있는 것 같습니다.

 

 아무튼, 결과를 살펴보면요.

 

이와 같이 타입을 확인할 수 있습니다.