rustHow to clone struct in Rust
Cloning a struct in Rust is a simple process. To clone a struct, you can use the clone() method. This method will create a deep copy of the struct, meaning that any changes made to the clone will not affect the original struct.
Example
#[derive(Clone)]
struct Point {
x: i32,
y: i32,
}
let p1 = Point { x: 1, y: 2 };
let p2 = p1.clone();
println!("p1: {:?}", p1);
println!("p2: {:?}", p2);
Output example
p1: Point { x: 1, y: 2 }
p2: Point { x: 1, y: 2 }
Code explanation
#[derive(Clone)]- This attribute is used to automatically implement theclone()method for the struct.let p1 = Point { x: 1, y: 2 };- This line creates a new instance of thePointstruct.let p2 = p1.clone();- This line clones thep1instance and stores it inp2.println!("p1: {:?}", p1);- This line prints out the contents ofp1.println!("p2: {:?}", p2);- This line prints out the contents ofp2.
Helpful links
Related
- Example of Rust struct with closure
- How to extend struct from another struct in Rust
- Example of constant struct in Rust
- Example of struct with vector field in Rust
- How to update struct in Rust
- How to convert struct to bytes in Rust
- How to convert struct to protobuf in Rust
- How to sort a struct in Rust
- How to pretty print a struct in Rust
- How to write struct to json file in Rust
More of Rust
- How to match whitespace with a regex in Rust?
- How to match a URL with a regex in Rust?
- How to parse a file with Rust regex?
- Regex example to match multiline string in Rust?
- How to use non-capturing groups in Rust regex?
- How to replace strings using Rust regex?
- How to replace all matches using Rust regex?
- How to use regex lookbehind in Rust?
- How to create enum from string in Rust
- How to ignore case in Rust regex?
See more codes...