「Rust」の版間の差分
削除された内容 追加された内容
タグ: 2017年版ソースエディター |
タグ: 2017年版ソースエディター |
||
440 行
:: ifの、分岐先の2つの式の型は同じでなければいけません。
:: else節が省略された場合は、Unit 型を返さなければいけません。
::: 式の最後に、セミコロン<code>};</code> が必要ということです<ref>C言語系では、式を文にする為いに<code>};</code> が必要です。Rustもそう説明されている場合がありますが、Rustでは式の型の一致が目的です。</ref>。
:また、<syntaxhighlight lang=rust inline>let s = if i == 0 {</syntaxhighlight>の文末の<code>};</code> のセミコロンも忘れがちです。
:Rust では if に限らず、コードブロックは式の一種で値を返します<ref>コードブロックが値を持つプログラミング言語としては、BCPL
この特徴は、関数型プログラミングを意識したものですが、同時に後に説明する所有権の移譲で重要な役割を果たします。
|