C#
C# 구조체
doridam
2023. 7. 6. 17:06
1. 구조체
C#에서는 Value Type 과 Reference Type을 지원한다. 생성시 struct 키워드를 사용하면 Value로 생성할 수 있고, class를 사용하면 Reference로 생성 가능하다.
기본 데이터 타입 : int, double, float, bool 등은 struct로 정의되어 있는 value type 이고, 주로 값을 저장하는데에 사용된다. 또한 상속을 하지 못하고, 기본생성자를 가지지 못하기 때문에 필드를 초기화 해줘야한다.
Reference 타입의 경우 class로 정의하여 생성하고 상속이 가능해 진다. 복잡한 데이터와 행위들을 정의하는곳에 사용한다.
2. 사용
class Program 내부에 MyPoint 라는 구조체를 선언하고, 생성자를 선언해 new 키워드로 생성시 매개변수의 값이 들어가도록 작성하였다. 후 ToString() 메소드를 오버라이드하고 매개변수를 통해 전달된 값을 출력하도록 하였다.
구조체를 배열형식으로 선언하여 사용할 수 도 있다. 해당 예제에서는 배열에 값을 입력 후 for문을 통해 배열의 값을 출력하는 예제이다.
위에 예제와 비슷하지만 해당 예제는 매개변수를 구조체를 사용하고 있다. Print 메소드에 매개변수로 전달된 car 구조체를 사용하여 출력한다.