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
- Example of struct private field in Rust
- Example of constant struct in Rust
- How to init zero struct in Rust
- Example of Rust struct with closure
- How to serialize struct to xml in Rust
- Rust struct without fields
- Example of struct with vector field in Rust
- How to sort a struct in Rust
- How to pretty print a struct in Rust
- How to convert struct to bytes in Rust
More of Rust
- How to get a capture group using Rust regex?
- How to use regex to match a double quote in Rust?
- How to replace strings using Rust regex?
- How to use non-capturing groups in Rust regex?
- Word boundary example in regex in Rust
- How to use regex to match a group in Rust?
- Example of struct private field in Rust
- How to multiply matrices in Rust?
- How to parse JSON string in Rust?
- How to initialize a Rust HashMap?
See more codes...