2016-08-19 3 views
2

나는 디버그 목적으로 {:?}을 사용합니다.`{:?} '에서`:`와`?`는 무엇을 의미합니까?

그러나 나는 :?의 의미가 개별적으로 무엇인지 모르겠습니다. (또는 아마도 기억이 안납니다.) 이것에 대한 참조가 있습니까?

+1

물론 설명서가 있습니다. 그리고 아주 상세한 것. 어디에서해야 할 것인가 : [std :: fmt] (https://doc.rust-lang.org/std/fmt/index.html) 모듈. –

+1

아마도 내 대답을 업데이트해야합니다. 내 질문은 "사용하는 방법"에 관한 것이 아니 었습니다. 그러나 대략 : "''는 의미한다 ...". 충분히 명확하지 않은 것은 확실합니다. 죄송합니다. –

+0

문서는 [?] ('https://doc.rust-lang.org/std/fmt/index.html#formatting-traits)'와 '다른 서식 지정 문자'도 의미합니다. –

답변

5

:은 매개 변수 색인을 형식 사양과 구분합니다. {}에는 매개 변수 색인이 포함될 수 있습니다. {0}, {1} 등. 형식을 지정하려면 :과 함께 입력해야합니다. {0:?}. 그리고 ?으로 지정하면 std::fmt::Display이 아닌 특성을 사용하여 서식을 지정해야합니다. 다른 문자는 Hex의 경우 x, e의 경우는 LowerExp 등의 다른 특성을 지정합니다.

+0

감사합니다. 왜 물음표가 "디버그"에 사용되는지 이해할 수 없습니다. 다른 말로하면, 나는 왜 다른 것을 선택하지 않는지에 대한 대답을 찾고 있었습니까? ("디버그"와 "물음표"사이의 관계를 잘 모르겠다.) –

+0

어쩌면 그것은 단지 바보 같은 질문 일 뿐이며, 미안하지만 내 마음을 제어 할 수 없다! –

+2

@ rap-2-h : 글쎄, 사용하지 않은 기호가 필요했고,'?'는 사용되지 않았고, 다시 디버깅 할 때 "당신은 어떤 가치가 있니?" 그래서 나는 물음표가 아주 적절하다고 생각한다. –

관련 문제