C#/C#_기초강의

(C#) 자료형: 암시적 형식 지역 변수 선언: var

코딩ABC 2023. 4. 20. 09:20
반응형

자료형: 암시적 형식 지역 변수 선언: var (Implicitly typed local variables)

 var는 암시적 형식으로 모든 형식의 자료를 선언할 수 있으며, 컴파일러에 의해서 초기값에 의해서 그 형식을 결정됩니다.

 

var는 다음과 같은 특징이 있습니다.

  • 모든 형식의 변수를 선언할 수 있습니다.
  • 지역변수로만 사용할 수 있습니다(필드 변수로 사용할 수 없습니다.)
  • 반드시 초기값을 이용해서 선언해야 합니다.
  • 초기값에 의해서 형식이 결정되기 때문에, 선언된 이후에는 해당 형식으로만 사용할 수 있습니다.
var a = 10;  // Implicitly typed -- 암시적으로 선언된 형식
int b = 20;   // Explicitly typed  -- 명시적 선언된 형식

 

var는 모든 형식을 다 선언할 수 있습니다.

var a = 100;
var b = 3.14F;
var c = 123.45678;
var d = "Hello, C#";
var e = DateTime.Now;

 

var  a;        // 오류 -- 초기값을 사용하지 않으면 오류입니다.
a=100;  

 

class MyClass
{
    var  a = 100;   // 오류  -- 지역변수로만 사용할 수 있습니다. 필드로 선언할 수 없습니다.
    ...
}

 

GetType()

GetType() 메서드를 이용해서 var로 선언된 변수의 형식을 알 수 있습니다.

        static void Main(string[] args)
        {
            var a = 100;
            var b = "Hello";
            Console.WriteLine(a.GetType());
            Console.WriteLine(b.GetType());
        }

 

어떤 메서드의 반환값의 형식을 모를 때 var로 받으면 편리합니다.

?  result = MessageBox.Show(“삭제할까요?”, “메시지”, … );
 
 
?  result = from word in words
                where word[0] == 'g'
                select word;

? 자리에 무슨 형식을 사용해야지?  이런 경우에 var 형식을 사용하면 편리합니다.

var   result = MessageBox.Show(“삭제할까요?”, “메시지”, … );
 
 
var   result = from word in words
                where word[0] == 'g'
                select word;

 

반응형

'C# > C#_기초강의' 카테고리의 다른 글

(C#) 자료 형식 변환(1) type conversion  (1) 2023.04.20
(C#) 자료형: object, 박싱과 언박싱  (0) 2023.04.20
(C#) 자료형: string 문자열 형식  (0) 2023.04.20
(C#) 자료형: char 문자형  (0) 2023.04.20
(C#) 자료형: bool  (0) 2023.04.20