무명 자료형 Anonymous Types

Gogi·2023년 9월 8일

C# 언어 기초 목록

목록 보기
22/29

이름이 지정되지 않은 자료형

무명 자료형(Anonymous Types)은 C#에서 도입된, 명시적으로 이름을 정의하지 않은 클래스 타입을 의미한다. 이러한 타입은 주로 LINQ 쿼리나 객체 초기화자(Object Initializer)에서 사용된다. 무명 자료형은 var 키워드를 사용하여 변수에 할당돼야 하며 컴파일러가 자동으로 이를 감지하고 적절한 타입을 추론한다.


개념 설명

- 기본 구조

var person = new { Name = "Alice", Age = 30 };

personNameAge라는 두 개의 읽기 전용 프로퍼티를 가진 무명 자료형의 인스턴스를 가리킨다.

- 주요 특징

  1. 읽기 전용: 무명 자료형의 모든 프로퍼티는 읽기 전용이며, 값을 한 번 할당한 후에는 변경할 수 없음.
  2. 컴파일 타임에 결정됨: 무명 자료형은 컴파일 시점에 타입이 결정됨.
  3. LINQ와의 연동: 무명 타입은 주로 LINQ 쿼리 결과를 저장하는 데 사용됨.

사용 예시

LINQ 쿼리에서 사용 예:

var query = from p in people
            select new { p.Name, p.Age };

foreach (var item in query)
{
    Console.WriteLine($"Name: {item.Name}, Age: {item.Age}");
}

제약 사항

  • 무명 자료형은 컴파일 타임에만 타입 정보가 존재하기 때문에 메서드 바깥으로 반환불가.
  • 상속을 지원하지 않음.
  • 인터페이스를 구현할 수 없음
profile
C, C++, C#, Unity

0개의 댓글