자기개발하는 QA
Rust 4 본문
- 타입 별칭을 사용하는 방법
type File = String
- Struct로 구조체 만들기rust에는 기본적으로 변수에 할당하지 않고 이동을 시킨다. 이동된 변수는 기존 위치에서 이동 되어 다시 참조할 수 없다
let f1_moved = f1;
/// 에러 발생
println!("{:?}", f1);
- String::from(”a”)와 “a” 는 다른 타입이다.
- 벡터의 reserve 메소드는 메모리 재할당이 자주 일어나는 것을 방지하기 위해 미리 capacity를 확보해둘 수 있다.
- 필수적으로 불러야 하는 함수는 아니지만 아주 큰 길이의 벡터의 경우 reserve를 통해 메모리에 할당이 가능한지 확인할 수 있다.
- impl로 구조체에 메서드 추가하기
- new 메서드를 구현하여 객체 생성 간략화
- new는 미리 지정된 키워드가 아니어서 일반 메서드로 선언됨
- new 메서드를 구현하여 객체 생성 간략화
struct File {
name: String,
data: Vec<u8>,
}
impl File {
fn new(name: &str) -> File {
File {
name: String::from(name),
data: Vec::new(),
}
}
}
Vector의 append 메소드는 인자 벡터의 있는 값들은 호출한 벡터로 이동 시킨다!
- append 실행 이후 인자 벡터를 println!으로 찍어보면 비어있음!..
728x90