본문으로 건너뛰기

일반적인 데이터 형태

일반적인 데이터 형태란 데이터 형태가 정해져 있지 않고 들어 오는 값에 따라 자동으로 형태가 정해진다는 뜻입니다.

대부분 임시 이름을 지어주고 (예: T) 그리고 함수 매개변수에서 사용됩니다.

fn foo<T>(arg: T) {  }

구조체에서 활용

struct GenVal<T> {
random_value: T
}

impl<T> GenVal<T> {
fn new(value: T) -> GenVal<T> {
GenVal { random_value: value }
}

fn get_value(&self) -> &T {
&self.random_value
}
}

fn main() {
let gen_val = GenVal::new(10);
println!("{}", gen_val.get_value());
}

이와 같이 구조체를 사용할 때 타입이 필요 없을 때가 있습니다.