본문 바로가기
Languages/RUST

[RUST] TRPL : Chapter 10 - Generic Types & Lifetime

by odaebum 2024. 11. 29.
728x90

Chapter 10 - Generic Types & Lifetime

Generic

  • Generic : 개념의 중복을 효과적으로 처리하기 위한 도구
  • T를 활용하여 generic을진행한다.
  • 매개변수이름을 선언할 때 <> 를 활용한다
fn largest<T>(list: &[T]) -> &T {

Trait

  • 메서드 시그니처를 그룹화하여 일부 목적을 달성하는 데 필요한 동작 집합을 정의함.
  • 인터페이스와 비슷한 기능
  • src/lib.rs에 정의하여 사용한다.
  • 사용방법
    1. 사용하고 싶은 trait 이름을 impl 한다. 이후 for 을 통해 name type을 결정한다.
    2. 이후 재정의한다.

수명

  • Lifetime을 주석으로 명시하여 dangling references 방지한다.
  • ' 를 사용하여 수명 매개변수를 정의한다.
&i32        // a reference
&'a i32     // a reference with an explicit lifetime
&'a mut i32 // a mutable reference with an explicit lifetime
  • 함수에서 참조를 반환할 때 반환 유형의 수명 매개변수는 매개변수 중 하나의 수명 매개변수와 일치해야한다.

생각

아직 Rust의 lifetime에 대한 이해도가 낮은 것 같다. 추후 프로젝트를 통해 더욱 알아가야겠다.

728x90

'Languages > RUST' 카테고리의 다른 글

[RUST] TRPL : Chapter 12 - I/O Project  (0) 2024.12.01
[RUST] TRPL : Chapter 11 - Test  (0) 2024.12.01
[RUST] TRPL : Chapter9 - Error Handling  (0) 2024.11.29
[RUST] TRPL : Chapter 8 - Collections  (0) 2024.11.29
[RUST] TRPL : Chapter 7 - Project  (0) 2024.11.29