1
0
mirror of https://github.com/rust-lang/rustlings.git synced 2024-12-10 11:10:26 +02:00

Merge pull request #93 from Michael-Lfx/patch-1

More detail about expression and statement
This commit is contained in:
olivia hugger 2018-10-11 14:04:07 +02:00 committed by GitHub
commit d4ab3f28cd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -40,5 +40,8 @@ fn square(num: i32) -> i32 {
// 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
// a value and statements don't. We want to return a value from the `square` function, but it
// isn't returning one right now...
// a value based on its operand, and statements simply return a () type which behaves just like `void` in C/C++ language.
// 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`