일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 도커
- Python
- Unity
- C# delegate
- jupyter lab
- docker
- Algorithm
- jupyter
- 다트 언어
- c# 추상 클래스
- Data Structure
- c# winform
- c#
- C언어 포인터
- Flutter
- vim
- c언어
- git
- Houdini
- github
- HTML
- c# 윈폼
- 유니티
- 깃
- 플러터
- 포인터
- dart 언어
- C++
- 구조체
- gitlab
Archives
- Today
- Total
nomad-programmer
[Programming/C#] 무명 형식의 프로퍼티 본문
이름이 없는 형식, 즉 "무명 형식 (Anonymous Type)" 의 프로퍼티를 정의할 수 있다.
무명 형식은 형식의 선언과 동시에 인스턴스를 할당한다. 이 때문에 인스턴스를 만들고 다시는 사용하지 않을 때 요기하게 쓰인다.
// 괄호 사이에 임의의 프로퍼티 이름을 적고 값을 할당하면 그대로 새 형식의 프로퍼티가 된다.
var myInstance = new { Name = "test", Age = 17 };
Console.WriteLine( myInstance.Name, myInstance.Age );
무명 형식에는 주의할 점이 있다. 그것은 무명 형식의 프로퍼티에 할당된 값은 변경 불가라는 점이다.
한마디로 한번 무명 형식의 인스턴스가 만들어지고 난 다음에는 읽기만 할 수 있다는 것이다. 이러한 특징들을 보면 무명 형식이 무용지물인 것만 같은 느낌을 주지만 LINQ와 함께 사용하면 아주 유용하게 쓰인다.
using System;
namespace CSharpExample
{
class MainApp
{
static int Main(string[] args)
{
var a = new { Name = "haha", Age = 17 };
Console.WriteLine($"Name: {a.Name}, Age: {a.Age}");
var b = new { Subject = "수학", Scores = new int[] { 90, 80, 70, 60 } };
Console.WriteLine($"Subject: {b.Subject}, Scores: ");
foreach(var score in b.Scores)
{
Console.Write($"{score} ");
}
Console.WriteLine();
return 0;
}
}
}
/* 결과
Name: haha, Age: 17
Subject: 수학, Scores:
90 80 70 60
*/
'Programming > C#' 카테고리의 다른 글
[Programming/C#] 추상 클래스와 프로퍼티 (0) | 2020.09.14 |
---|---|
[Programming/C#] 인터페이스의 프로퍼티 (0) | 2020.09.14 |
[Programming/C#] 프로퍼티와 생성자 (0) | 2020.09.14 |
[Programming/C#] 자동 구현 프로퍼티 (0) | 2020.09.12 |
[Programming/C#] 프로퍼티 (Property) (0) | 2020.09.11 |
Comments