rust 为什么这个不安全的块返回一个单位类型?

bfnvny8b  于 2023-10-20  发布在  其他
关注(0)|答案(1)|浏览(125)

我不太明白unsafe和赋值是如何一起工作的。下面的代码给了我一些错误:

  1. fn num() -> u64 {
  2. 1;
  3. }
  4. fn test() -> u64 {
  5. let x = unsafe {
  6. num();
  7. };
  8. return x;
  9. }

错误是:

  1. src/main.rs:37:9: 37:10 note: expected type `u64`
  2. src/main.rs:37:9: 37:10 note: found type `()`

我的真实的例子与此类似。

k5ifujac

k5ifujac1#

分号。

  1. fn num() -> u64 {
  2. 1
  3. }
  4. fn test() -> u64 {
  5. let x = unsafe {
  6. num()
  7. };
  8. return x;
  9. }

See also this answer about semicolons

相关问题