質問するログイン新規登録

質問編集履歴

3

誤字の修正

2021/08/28 23:44

投稿

rtgsdfsdg
rtgsdfsdg

スコア176

title CHANGED
File without changes
body CHANGED
@@ -41,8 +41,8 @@
41
41
  returns a value referencing data owned by the current function
42
42
  ```
43
43
 
44
- ### Lazy<&PathBuf>にする
44
+ ### 型を`Lazy<&PathBuf>`にする
45
- `Lazy<&Path>のときと同様のエラーがでた。
45
+ `Lazy<&Path>`のときと同様のエラーがでた。
46
46
 
47
47
  #### コード
48
48
  ```rust

2

試したこと: Lazy<&PathBuf>にした。

2021/08/28 23:44

投稿

rtgsdfsdg
rtgsdfsdg

スコア176

title CHANGED
File without changes
body CHANGED
@@ -39,4 +39,24 @@
39
39
  cannot return value referencing temporary value
40
40
 
41
41
  returns a value referencing data owned by the current function
42
+ ```
43
+
44
+ ### Lazy<&PathBuf>にする
45
+ `Lazy<&Path>のときと同様のエラーがでた。
46
+
47
+ #### コード
48
+ ```rust
49
+ use std::path::PathBuf;
50
+ use once_cell::sync::Lazy;
51
+
52
+ static DATA_FILE_PATH: Lazy<&PathBuf> = Lazy::new(|| {
53
+ &home::home_dir().unwrap().join("a_file")
54
+ });
55
+ ```
56
+
57
+ #### エラー
58
+ ```
59
+ cannot return reference to temporary value
60
+
61
+ returns a reference to data owned by the current function
42
62
  ```

1

構造体Pathのuse文を追加

2021/08/28 23:43

投稿

rtgsdfsdg
rtgsdfsdg

スコア176

title CHANGED
File without changes
body CHANGED
@@ -3,6 +3,7 @@
3
3
 
4
4
  #### コード
5
5
  ```rust
6
+ use std::path::Path;
6
7
  use once_cell::sync::Lazy;
7
8
 
8
9
  static DATA_FILE_PATH: Lazy<&Path> = Lazy::new(|| {
@@ -25,6 +26,7 @@
25
26
 
26
27
  #### コード
27
28
  ```rust
29
+ use std::path::Path;
28
30
  use once_cell::sync::Lazy;
29
31
 
30
32
  static DATA_FILE_PATH: Lazy<&'static Path> = Lazy::new(|| {