Menu
Coddy logo textTech

요약: 제네릭 함수

Coddy Lua 여정의 Luau 소개 섹션에 포함된 레슨 — 73개 중 62번째.

challenge icon

챌린지

중급

제네릭 타입 별칭(generic aliases)과 제네릭 함수(generic functions)를 하나의 프로그램에서 함께 사용해보세요.

두 개의 타입 파라미터 TU를 가졌으며, 다음 필드를 포함하는 테이블을 정의하는 제네릭 타입 별칭 Pair를 정의하세요:

  • T 타입의 first
  • U 타입의 second

TU를 선언하고, first: Tsecond: U를 매개변수로 받아 이들을 Pair<T, U> 형태로 패킹하여 반환하는 제네릭 함수 makePair를 작성하세요.

TU를 선언하고, pair: Pair<T, U>를 매개변수로 받아 문자열 보간법(string interpolation)을 사용해 문자열 ({first}, {second})를 반환하는 제네릭 함수 describePair를 작성하세요 (반환 타입 string).

그런 다음:

  1. makePair("Nova", 87)을 호출하여 Pair<string, number> 타입의 playerScore를 생성하세요.
  2. makePair(3, true)를 호출하여 Pair<number, boolean> 타입의 levelDone을 생성하세요.
  3. playerScore.first를 출력하세요.
  4. playerScore.second를 출력하세요.
  5. describePair(playerScore)를 출력하세요.
  6. describePair(levelDone)을 출력하세요.
  7. describePair(makePair("Luau", 2026))을 한 줄로 출력하세요.

직접 해보기

-- 여기에 코드를 작성하세요
-- 1) 타입 Pair<T, U> = {first: T, second: U} 정의
-- 2) makePair<T, U>(first: T, second: U): Pair<T, U> 정의
-- 3) describePair<T, U>(pair: Pair<T, U>): string 정의
--    `({pair.first}, {pair.second})`를 반환
-- 4) playerScore ("Nova", 87)와 levelDone (3, true)를 만들고,
--    그런 다음 필요한 다섯 줄을 출력하세요

Luau 소개의 모든 레슨