성엽이
KKIMSSI
성엽이
전체 방문자
오늘
어제
  • 분류 전체보기 (454)
    • :) (2)
    • C프로그래밍이론 (9)
    • C++프로그래밍 (64)
      • STL (1)
    • C# (2)
    • Visual studio 10.0 (9)
    • AT91SAM7S256 (21)
    • 논리회로 (14)
    • AVR2560 (11)
    • TCPIP (16)
    • NetWork (4)
      • Ubuntu Linux (2)
    • Assembly (21)
    • UNIX 프로그래밍 (6)
    • RFID 분석 (1)
    • Win32 API (7)
    • Cortex-M3 (4)
    • Unity (91)
    • Flutter (9)
    • OwnProject (11)
      • It's mine (5)
      • 마인드스톰 실습 (1)
      • 보고서 자료 (2)
      • RPi B+ (2)
    • ETC (25)
      • 상식 (3)
    • MFC (40)
    • PostgeSQL (18)
    • 영상제어 (6)
      • VFW_영상처리 (1)
    • Python (0)
    • Java (30)
      • SpringBoot (2)
      • Javascript (1)
      • JSP (13)
      • Spring (8)
    • Oracle (4)
      • SQL (3)
    • HTML (6)
      • Thymeleaf (1)
      • CSS (1)
      • Bootstrap (3)
    • IDE (1)
      • VS Code (1)
    • Android (2)
    • Privacy Policy (0)
    • MYSQL (2)
      • MariaDB (2)
    • AWS (5)
    • 개인공부 (0)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록
  • 관리자
  • 글쓰기

공지사항

인기 글

태그

  • Boot Code 분석
  • ARM Reverse Engineering
  • WINAPI
  • 문자열 나누기
  • MFC

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
성엽이

KKIMSSI

C# 암시적 타입변환 - var 타입 변수
C#

C# 암시적 타입변환 - var 타입 변수

2019. 10. 15. 13:25

var를 이용하면 암시적으로 타입변환해서 사용할수있음

 

- 반복문이나 LINQ사용시 리턴되는 데이터타입관련없이 사용할수있다는 장점이 있으나

   아래 서술되는 항목처럼 몇가지 제한 사항이 존재합니다.

 

- private, public 등 클래스의 필드데이터로 쓸 수 없다

- 반환값으로 쓸수없다

- 매개변수타입으로 쓸 수 없다

- null 초기화 못함. 컴파일러가 변수의 타입을 추정할 수 없으므로

  단, 참조타입의 경우 할당 후 null할당은 가능

- 형식 제약이 엄격한 타입이므로 원래 초기값과 다른 타입의 값을 가질 수 없다

- nullable지정은 불가능

class Program

    {

        //private var m_Int = 10;       필드데이터로 쓸수없다

       //public var m_str = "HELLO";



       //static var ReturnMethod(var i, var n) { }  반환값, 매개변수 타입으로 쓸수없다



        static void Main(string[] args)

        {

            var v1 = 10;

          var v2 = "HELLO";

            //var v3 = null;        null로 초기화 못함

          //var? v4 = null;       nullable로 지정할수없다



            string[] strs = new string[] { "ABCD", "DDD", "EEE", "FFF" };



            Console.WriteLine("v1:" + v1);

            Console.WriteLine("v2:" + v2);            



          v2 = null;  //초기값(참조타입) 할당후 null할당은 허용.

            Console.WriteLine("v2:" + v2);



            //v2 = 100;     원래 초기값과 다른 타입의 값을 가질수없다



            //반복문

            foreach(var s in strs)

                Console.WriteLine("string: {0}", s);



            //LINQ

            var res = from s in strs

                      where s.StartsWith("A")    //"A"로 시작되는 항목을 LINQ이용해서 가져오기

                      select s;



            foreach(var s in res)

                Console.WriteLine("s:" + s);

        }

    }

 


 

<결과>

 

 

 

저작자표시 (새창열림)

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

[C#] Using 사용처  (0) 2019.11.11
    'C#' 카테고리의 다른 글
    • [C#] Using 사용처
    성엽이
    성엽이

    티스토리툴바