-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Chapter5 構造体 #9
Comments
5.1.1 構造体のインスタンス化 let user = User {
email: String::from("someone@mail"),
username: String::from("somebody_name"),
active: false,
sign_in_count: 0
}; フィールドは 5.1.2 インスタンス化した構造体のアクセス5.1.1でインスタンス化された構造体に対しては println!("username is : {}", user.username); 5.1.3 可変性
let mut user = User {
email: String::from("someone@mail"),
username: String::from("somebody_name"),
active: false,
sign_in_count: 0
};
user.email = String::from("other@mail"); 5.1.4 フィールドと変数が同名の時にフィールド初期化省略記法を使う。下記例ではフィールド名とその変数がともに同じ名称 (email) であるので let email = String::from("someone@mail");
let mut user = User {
email
username: String::from("somebody_name"),
active: false,
sign_in_count: 0
}; 5.1.5 構造体初期化記法を使うフィールド名を省略するだけではなく、さらに構造体自体の初期化を別のインスタンスを用いて let user1 = User {
email: String::from("someone@mail"),
username: String::from("somebody_name"),
active: false,
sign_in_count: 0,
};
println!("user1 {}", user1.email);
// user2 を user1 を使用してインスタンス化する。
let user2 = User { ..user1 }; user1は user2の初期化を行ったときに所有権が移動する。
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
5.1 構造体の宣言
名と型を指定した複数の変数に名前を付けて複合型として宣言したもの
The text was updated successfully, but these errors were encountered: