구조체(struct) 를 이용한 foreach문 사용

728x90
반응형

ASP.NET C# 환경에서 개발을 하다보니, 예전 C, C++ 개발에서 주로 이용하던

구조체 (struct) 를 활용한 방법이 궁금해졌습니다.

 

그리하여, 이를 이용한 예제를 구현해봤는데요.

for문 대신 foreach 문을 같이 사용해서 처리해봤습니다.

 

 

 

구조체를 사용하는 이유!

가장 궁금한 사항이 위 사항이 아닐까 합니다.

 

"굳이 구조체를 사용해야할 이유가 있나요? 배열로 처리하면 안되나요??"

 

라고 묻는 사람이 있을 수도 있습니다.

 

그런 분들게 드리는 해답!

 

동일한 형식의 구조를 가지고 있다면, 구조체를 사용할 필요없이 배열로 구현하면 되지만,

만약 int, string, DateTime 등등 다양한 형식이 존재한다면, 구조체로 구현하는 것이 좋습니다.

 

 

아래 예제를 구현 해 보면서 이해 하시면 빠를 것 같습니다.

 

 

 

 

예제 구현

 

 

 

1. 먼저 ASP.NET 웹 응용 프로그램 프로젝트를 생성해줍니다.

 

 

 

 

 

 

 

2. 아래와 같이 파일 중 .cs 파일을 선택해 줍니다.



 

 

 

 

3. namespace 안에 구조체를 선언해 줍니다. 저는 visual studio 2005 환경에 .NET Framework 2.0 환경이다 보니, get, set 을 수동으로 구현해 줬습니다.

저는 int, string, DateTime 형식으로 구조체를 구현했습니다.

 

 

 

 

 

4. 구조체를 생성 하였다면, 클래스 내에 전역 변수로 선언 해줬습니다.

구조체 배열로 선언해서, 배열안에 사용자의 정보를 담고 사용할 목적으로 구성하였습니다.


 

 

 

 

 

 

5. 자 이제 값을 넣는 부분인데요. 변수로 만든 User 에 배열로 접근하면, 구조체로 만든 Property가 보이시는 것을 알 수 있습니다.

이렇게 접근해서 set 을 이용해서 값을 넣어주게 됩니다.


 

 

 

 

 

 

6. 아래와 같이 값을 임시로 넣어봤습니다.


 

 

 

 

 

7. 이제 사용방법인데요. 저는 for 문을 이용해서 값을 사용할 수 있지만,

foreach 문을 이용해 보았습니다.

 


 

8. 컴파일 후 실행화면 입니다.


 

 

 

 

 

만약 설계에 struct 형식이 필요하다면, 응용해서 사용해보면 좋을 듯 합니다.

 

 

 

 

728x90