More detail about expression and statement
This commit is contained in:
parent
d33de0c99c
commit
a6bb340c2c
@ -40,5 +40,8 @@ fn square(num: i32) -> i32 {
|
|||||||
|
|
||||||
// This is a really common error that can be fixed by removing one character.
|
// This is a really common error that can be fixed by removing one character.
|
||||||
// It happens because Rust distinguishes between expressions and statements: expressions return
|
// It happens because Rust distinguishes between expressions and statements: expressions return
|
||||||
// a value and statements don't. We want to return a value from the `square` function, but it
|
// a value based on its operand and statements simply retun a `()` type which just like `void` in C/C++ language.
|
||||||
// isn't returning one right now...
|
// We want to return a value of `i32` type from the `square` function, but it is returning a `()` type...
|
||||||
|
// They are not the same. There are two solusions:
|
||||||
|
// 1. Add a `return` ahead of `num * num;`
|
||||||
|
// 2. remove `;`, make it to be `num * num`
|
||||||
|
Reference in New Issue
Block a user