2020년 11월 3일

시각

  • 2020년 11월 17일 20시 30분
  • Zoom을 통해 진행

주제

  • 챕터10 제네릭 타입, 트레이트 그리고 수명

기타

  • 다음 함수를 적절하게 고쳐 봅시다.

    
    #![allow(unused)]
    fn main() {
    fn largest <T>(list: &[T]) -> T {
        let mut largest = list[0];
    
        for &item in list.iter() {
            if item > largest {
                largest = item;
            }
        }
    
        return largest;
    }
    }
    
    • 이 함수를 > 연산자에 필요한 PartialOrd가 구현된 타입에 대해서만 받도록 수정해봅시다.
      • 그리고 데이터를 전달받는 과정에서 필요한 트레이트가 명시되야지 오류가 일어나지 않습니다. 그 부분도 수정해봅시다.
      • 리턴 타입을 참조로 변경해서 위와는 다른 방식으로 작동하게 수정해 봅시다. 힌트: &의 역할이 무엇인지 고민해보세요.