실습: struct 배열로 사용자 등록부 만들기
이번에는 한 건이 아니라 여러 건의 데이터를 다룹니다.
앞 실습에서는 책 한 권을 상태 변수에 저장했지만, 실제 서비스는 사용자가 수십·수백 명입니다.
같은 모양(이름, 점수)의 데이터가 여러 개라면 struct 배열 이 정답입니다.
게임 점수판, 회원 명단, 게시글 목록 등 대부분의 "목록형" 기능을 이 패턴으로 만듭니다.
User[] public users; 처럼 선언한 동적 배열은 길이가 고정되어 있지 않아, 등록이 일어날 때마다 push 로 끝에 새 요소를 덧붙일 수 있습니다.
저장된 사용자 수는 users.length 로 언제든 알 수 있고, users 가 public 이라 인덱스 getter가 자동 생성됩니다.
해야 할 일:
UserRegistry컨트랙트 안에Userstruct 를 선언하세요.string nameuint256 score
User타입의 public 동적 배열users를 선언하세요.register(string memory _name, uint256 _score)함수로 새User를users에push하세요.total()함수로 등록된 사용자 수를 반환하세요. (returns (uint256))
배열의 길이는
users.length 로 얻을 수 있습니다.완성 후 Run 을 눌러 모든 조건을 통과하는지 확인하세요.