Deref4.6에서 &String을 &str로 변경하는 것만으로 타입을 변경할 수 있었는데, 타입 변환이 엄격한 러스트의 특성을 생각하보면 이상한 일이다. 이런 변환이 가능한 이뉴는 Deref 때문이다. 어떤 타입 T가 Target U에 대해 Deref 트레이트를 구현했다면, &T와 &U는 상호변환이 가능(interchangable)하다. impl Deref for String { type Target = str; fn deref(&self) -> &str { // [...] }} String은 위와 같이 str 타입에 대해 Deref 트레이트를 구현했기 때문에 서로 변환이 가능하다.문제// TODO: title과 description이 접근자를 통해 반환되면, 정규화되어야(..
// TODO: Ticket의 접근자를 &Str을 사용해 다시 구현하세요.pub struct Ticket { title: String, description: String, status: String,}impl Ticket { pub fn new(title: String, description: String, status: String) -> Ticket { if title.is_empty() { panic!("Title cannot be empty"); } if title.len() > 50 { panic!("Title cannot be longer than 50 bytes"); } ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.