Easy Rust #44 ~ #45 generic


Easy Rust #44 ~ #45 generic

generic 함수에 인자로 들어오는 타입을 여러 가지로 하고 싶을 때가 있을 것입니다. 예를 들어 print 함수를 만들고 싶은데 print("hello") 이런 식으로 문자도 출력하고 싶고 print(42) 이런 식으로 숫자도 출력하고 싶을 때입니다. 이럴 때 사용하는 것이 generic, 제네릭입니다. give_thing이라는 함수를 만듭니다. 이 함수는 인자를 받아서 그걸 출력해주고, 그대로 리턴해주는 함수입니다. 인자로 임의의 타입 T를 받으려고 합니다. 이때 위와 같이 꺾은괄호를 써서 <T> 처럼 써주면 됩니다. 이때 T는 원하는 이름으로 써도 상관없습니다. 주로 이렇게 사용하기 때문에 이렇게 썼을 뿐입니다. 하지만 이런 에러가 뜹니다. 왜 그런지 보니 함수에서 출력을 해주는데 T 타입에 Display 트레잇이 구현되어 있지 않아서입니다. 정확히는 구현되어 있지 '않을 수도' 있어서입니다. T는 임의의 타입이기 때문에, 만약 struct와 같은 타입이 인자로 들어온다면 s...


#rust #러스트 #프로그래밍

원문링크 : Easy Rust #44 ~ #45 generic