質問編集履歴

7

微修正

2020/03/01 03:01

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -101,11 +101,3 @@
101
101
  ```
102
102
 
103
103
  となり、4行目が`cap=8`となっており、さらに混乱しました。
104
-
105
-
106
-
107
- # 考察
108
-
109
- 現時点で理由として考えているのは以下です。
110
-
111
- - PlayGroundのGoのバージョンがローカルのバージョン(1.14)と異なり、appendによって新しく作られるSliceの、デフォルトで確保されるcapacityのサイズが異なる

6

微修正

2020/03/01 03:01

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -106,6 +106,6 @@
106
106
 
107
107
  # 考察
108
108
 
109
- 現時点で理由として考えているのはikadesu.
109
+ 現時点で理由として考えているのは以下です。
110
110
 
111
111
  - PlayGroundのGoのバージョンがローカルのバージョン(1.14)と異なり、appendによって新しく作られるSliceの、デフォルトで確保されるcapacityのサイズが異なる

5

追記

2020/03/01 02:55

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -101,3 +101,11 @@
101
101
  ```
102
102
 
103
103
  となり、4行目が`cap=8`となっており、さらに混乱しました。
104
+
105
+
106
+
107
+ # 考察
108
+
109
+ 現時点で理由として考えているのはikadesu.
110
+
111
+ - PlayGroundのGoのバージョンがローカルのバージョン(1.14)と異なり、appendによって新しく作られるSliceの、デフォルトで確保されるcapacityのサイズが異なる

4

修正

2020/03/01 02:55

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -50,7 +50,7 @@
50
50
 
51
51
  func printSlice(s []int) {
52
52
 
53
- fmt.Printf("len=%d, cap=%d %v\n", len(s), cap(s), s)
53
+ fmt.Printf("len=%d cap=%d %v\n", len(s), cap(s), s)
54
54
 
55
55
  }
56
56
 
@@ -64,13 +64,13 @@
64
64
 
65
65
  ➜ a-tour-of-go git:(master) ✗ go run more-types/46-appending-to-a-slice/main.go master
66
66
 
67
- len=0, cap=0 []
67
+ len=0 cap=0 []
68
68
 
69
- len=1, cap=1 [0]
69
+ len=1 cap=1 [0]
70
70
 
71
- len=2, cap=2 [0 1]
71
+ len=2 cap=2 [0 1]
72
72
 
73
- len=5, cap=6 [0 1 2 3 4]
73
+ len=5 cap=6 [0 1 2 3 4]
74
74
 
75
75
  ```
76
76
 

3

追記

2020/03/01 02:48

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -58,7 +58,7 @@
58
58
 
59
59
 
60
60
 
61
- 実行結果は以下となります。
61
+ ローカルでの実行結果は以下となります。
62
62
 
63
63
  ```zsh
64
64
 

2

url追加

2020/03/01 02:47

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- A Tour of Goで、Sliceへのappendを解説する、以下のコードがあります。
5
+ A Tour of Goで、[Sliceへのappendを解説する、以下のコードがあります。](https://tour.golang.org/moretypes/15)
6
6
 
7
7
  ```go
8
8
 

1

微修正

2020/03/01 02:46

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,7 @@
1
+ ローカルマシンのGoのバージョン:`go version go1.14 darwin/amd64`
2
+
3
+
4
+
1
5
  A Tour of Goで、Sliceへのappendを解説する、以下のコードがあります。
2
6
 
3
7
  ```go
@@ -75,3 +79,25 @@
75
79
  実行結果4行目`cap=6`の理由を教えて頂けないでしょうか。
76
80
 
77
81
  `[0 1 2 3 4]`なので、capacityも`5`になると考えました。
82
+
83
+
84
+
85
+ ---
86
+
87
+
88
+
89
+ 余談ですが、A Tour of Goの画面右のPlayGroundで実行すると
90
+
91
+ ```go
92
+
93
+ len=0 cap=0 []
94
+
95
+ len=1 cap=2 [0]
96
+
97
+ len=2 cap=2 [0 1]
98
+
99
+ len=5 cap=8 [0 1 2 3 4]
100
+
101
+ ```
102
+
103
+ となり、4行目が`cap=8`となっており、さらに混乱しました。