2016-07-02 11 views
4

{:?}は、Rustでアレイ全体を印刷することがわかりました。私はそれが何であり、どのように正確に機能するのかを知りたい。それは印刷配列に限定されているのですか、他の目的のために他の場所で使用することができますか?{:?}はRust形式の文字列で何を意味しますか?

答えて

11

これは、std::fmtドキュメントの(残りの書式設定構文と共に)説明されています。

{...}は、すべての書式設定ディレクティブを囲みます。 :は、フォーマットされているものの名​​前または序数を区切ります(この場合、が省略されているため、次のことを意味します)。 ?は、デフォルトのDisplay特性、または他の特性の1つ(UpperHexまたはOctalなど)とは対照的に、フォーマットされているもののstd::fmt::Debug実装の使用をトリガするフォーマットオプションです。

したがって、{:?}は書式設定マクロに渡される「次の」値を書式化し、Debugを実装するものはすべてサポートします。

関連する問題