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 calledPoint
with two fields,x
andy
, both of typei32
. -
let p = Point { x: 0, y: 0 };
: This creates an instance of thePoint
struct withx
andy
set to0
. -
print_point(&p);
: This passes thep
instance ofPoint
to theprint_point
function as a reference. -
fn print_point(point: &Point) {
: This is the definition of theprint_point
function, which takes a reference to aPoint
struct as a parameter. -
println!("Point x: {}, y: {}", point.x, point.y);
: This prints out thex
andy
values of thePoint
struct passed as a parameter.
Helpful links
Related
- Example of struct private field in Rust
- Example of Rust struct with closure
- Example of struct of structs in Rust
- How to get struct value in Rust
- Example of bit field in Rust struct
- Rust struct without fields
- How to init zero struct in Rust
- How to convert struct to bytes in Rust
- Example of struct with vector field in Rust
- How to compare structs in Rust
More of Rust
- How to use regex to match a double quote in Rust?
- How to get a capture group using Rust regex?
- How to use non-capturing groups in Rust regex?
- How to parse JSON string in Rust?
- How to use regex to match a group in Rust?
- How to use regex with bytes in Rust?
- How to replace all using regex in Rust?
- Hashshet example in Rust
- How to replace a capture group using Rust regex?
- How to replace all matches using Rust regex?
See more codes...