rustHow to use struct as parameter in Rust
Structs can be used as parameters in Rust by passing them as references. This is done by using the & operator before the struct name. For example:
struct Point {
x: i32,
y: i32,
}
fn main() {
let p = Point { x: 0, y: 0 };
print_point(&p);
}
fn print_point(point: &Point) {
println!("Point x: {}, y: {}", point.x, point.y);
}
Output example
Point x: 0, y: 0
Code explanation
-
struct Point { x: i32, y: i32, }: This is the definition of a struct calledPointwith two fields,xandy, both of typei32. -
let p = Point { x: 0, y: 0 };: This creates an instance of thePointstruct withxandyset to0. -
print_point(&p);: This passes thepinstance ofPointto theprint_pointfunction as a reference. -
fn print_point(point: &Point) {: This is the definition of theprint_pointfunction, which takes a reference to aPointstruct as a parameter. -
println!("Point x: {}, y: {}", point.x, point.y);: This prints out thexandyvalues of thePointstruct passed as a parameter.
Helpful links
Related
- How to update struct in Rust
- How to convert struct to protobuf in Rust
- Example of Rust struct with closure
- Example of struct with vector field in Rust
- Example of struct private field in Rust
- Example of constant struct in Rust
- How to init zero struct in Rust
- How to serialize struct to xml in Rust
- How to convert struct to bytes in Rust
- How to copy struct in Rust
More of Rust
- How to use regex to match a double quote in Rust?
- How to use a tuple as a key in a Rust HashMap?
- Yield example in Rust
- How to use regex lookahead in Rust?
- Regex example to match multiline string in Rust?
- How to use regex captures in Rust?
- How to perform matrix operations in Rust?
- How to sort a Rust HashMap?
- How to convert Rust bytes to a struct?
- How to compare enum in Rust
See more codes...