struct는 int, string등 값형식을 저장하는 구조체이다.(class 친구)
<선언_1>
struct Member
{
public string name;
public int age;
}
class와 비슷하게 선언하며, 사용중인 구조체안에서 값을 선언하여 사용할 수 있다.
public void Main()
{
Member member1;
member1.name = "야에 미코"
member1.age = "501";
Member member2;
member1.name = "라이덴"
member1.age = "452";
}
public void Main()
{
Member[] member = new Member [2];
member[0].name = "야에 미코"
member[0].age = "501";
member[1].name = "라이덴"
member[1].age = "452";
}
<선언_1>의 내용을 가지고 사용예시_1과 사용예시_2처럼 사용 할 수 있다.
구조체 안에 새로운 메소드를 생성하여 이용할 수도 있다.
class는 참조타입으로 힙메모리(동적으로 메모리 할당, 해제를 해줘야되는 영역)에 저장되지만,
struct는 값타입으로 스택메모리(함수호출시 메모리 할당, 해제시 자동해제)에 저장되어 가비지 컬렉션의 호출 주기를 늦출 수 있다.(성능향상)