0
0
Rustprogramming~30 mins

Lifetimes in structs in Rust - Mini Project: Build & Apply

Choose your learning style9 modes available
Lifetimes in structs
📖 Scenario: Imagine you are creating a program that stores a short message and its author. You want to make sure the message and author data live long enough while your program uses them.
🎯 Goal: You will build a Rust struct that holds references to a message and its author using lifetimes. This will help you understand how to use lifetimes in structs to avoid errors.
📋 What You'll Learn
Create a struct called Message with lifetime parameter 'a
Add two fields to Message: content and author, both string slices with lifetime 'a
Create a variable msg_content with the exact string "Hello, Rust!"
Create a variable msg_author with the exact string "Alice"
Create an instance of Message called message using msg_content and msg_author
Print the message content and author using println!
💡 Why This Matters
🌍 Real World
Lifetimes in structs are important when you want to store references safely without copying data, such as in text processing or configuration management.
💼 Career
Understanding lifetimes helps you write safe and efficient Rust code, a valuable skill for systems programming, embedded development, and performance-critical applications.
Progress0 / 4 steps
1
Create the Message struct with lifetime
Create a struct called Message with a lifetime parameter 'a. It should have two fields: content and author, both of type &'a str.
Rust
Hint

Use struct Message<'a> to declare the lifetime. Both fields should be &'a str.

2
Create message content and author variables
Create two variables: msg_content with the string "Hello, Rust!" and msg_author with the string "Alice".
Rust
Hint

Use let msg_content = "Hello, Rust!"; and let msg_author = "Alice";.

3
Create a Message instance using the variables
Create a variable called message of type Message using msg_content for content and msg_author for author.
Rust
Hint

Use let message = Message { content: msg_content, author: msg_author };.

4
Print the message content and author
Use println! to print the message in the format: "Message: Hello, Rust! by Alice" using message.content and message.author.
Rust
Hint

Use println!("Message: {} by {}", message.content, message.author); to print.