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 init zero struct in Rust
- How to copy struct in Rust
- Example of struct private field in Rust
- Example of struct with vector field in Rust
- How to convert struct to protobuf in Rust
- How to convert struct to bytes in Rust
- How to sort a struct in Rust
- How to update struct in Rust
- Example of Rust struct with closure
- Example of struct public field in Rust
More of Rust
- How to match the end of a line in a Rust regex?
- How to use binary regex in Rust?
- Regex example to match multiline string in Rust?
- How to use regex to match a double quote in Rust?
- How to print a Rust HashMap?
- How to match digits with regex in Rust?
- How to use regex captures in Rust?
- How to create a HashMap of structs in Rust?
- How to insert an element into a Rust HashMap if it does not already exist?
- How to lock a Rust HashMap?
See more codes...