[Rust] Shadowing

Ref to : https://doc.rust-lang.org/book/ch03-01-variables-and-mutability.html#shadowing

 

fn main() {
    let number = "T-H-R-E-E"; // don't change this line
    println!("Spell a Number : {}", number);
    number = 3; // don't rename this variable
    println!("Number plus two is : {}", number + 2);
}

We have compile error:

⚠️  Compiling of exercises/variables/variables5.rs failed! Please try again. Here's the output:
error[E0308]: mismatched types
 --> exercises/variables/variables5.rs:9:14
  |
7 |     let number = "T-H-R-E-E"; // don't change this line
  |                  ----------- expected due to this value
8 |     println!("Spell a Number : {}", number);
9 |     number = 3; // don't rename this variable
  |              ^ expected `&str`, found integer

error[E0369]: cannot add `{integer}` to `&str`
  --> exercises/variables/variables5.rs:10:48
   |
10 |     println!("Number plus two is : {}", number + 2);
   |                                         ------ ^ - {integer}
   |                                         |
   |                                         &str

error: aborting due to 2 previous errors

 

Let use shadowing:

fn main() {
    let number = "T-H-R-E-E"; // don't change this line
    println!("Spell a Number : {}", number);
    {
        let number = 3; // don't rename this variable
        println!("Number plus two is : {}", number + 2);
    }
}

 

posted @   Zhentiw  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2023-02-23 [Typescript] NoInfer
2023-02-23 [Typescript] OVerride external library Types
2022-02-23 [Whole Web] SQL INJECTION
2022-02-23 [Whole Web] CROSS SITE SCRIPTING (XSS)
2019-02-23 [Functional Programming] Pointy Functor Factory
2019-02-23 [Functional Programming] Async IO Functor
2017-02-23 [HTML5] Focus management using CSS, HTML, and JavaScript
点击右上角即可分享
微信分享提示