일반적인 데이터 형태
일반적인 데이터 형태란 데이터 형태가 정해져 있지 않고 들어 오는 값에 따라 자동으로 형태가 정해진다는 뜻입니다.
대부분 임시 이름을 지어주고 (예: 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());
}
이와 같이 구조체를 사용할 때 타입이 필요 없을 때가 있습니다.