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

回答編集履歴

5

追記

2019/01/05 12:40

投稿

alphya
alphya

スコア124

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  };
6
6
  ```
7
7
 
8
- これは、やっかいな構文解析として知られている問題(要出典)で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という名前のメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
8
+ これは、最もやっかいな構文解析として知られている問題([参照](https://en.wikipedia.org/wiki/Most_vexing_parse)で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という名前のメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
9
9
 
10
10
  ```cpp
11
11
  class Game

4

追記

2019/01/05 12:40

投稿

alphya
alphya

スコア124

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  };
6
6
  ```
7
7
 
8
- これは、やっかいな構文解析として知られている問題(?)で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という名前のメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
8
+ これは、やっかいな構文解析として知られている問題(要出典)で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という名前のメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
9
9
 
10
10
  ```cpp
11
11
  class Game

3

追記

2019/01/05 10:20

投稿

alphya
alphya

スコア124

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  };
6
6
  ```
7
7
 
8
- これは、やっかいな構文解析として知られている問題で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball というメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
8
+ これは、やっかいな構文解析として知られている問題(?)で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という名前のメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
9
9
 
10
10
  ```cpp
11
11
  class Game

2

追記

2019/01/05 10:15

投稿

alphya
alphya

スコア124

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  };
6
6
  ```
7
7
 
8
- これは、やっかいな構文解析として知られている問題で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
8
+ これは、やっかいな構文解析として知られている問題で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball というメンバ関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
9
9
 
10
10
  ```cpp
11
11
  class Game

1

追記

2019/01/05 10:07

投稿

alphya
alphya

スコア124

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  };
6
6
  ```
7
7
 
8
- これは、やっかいな構文解析として知られている問題で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という関数」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
8
+ これは、やっかいな構文解析として知られている問題で、この文脈の場合コンパイラは上の記述を「std::vector<Ball> を戻り値とする ball という関数の宣言」と解釈します。なので、「型指定子が必要です」とエラーを出しています。下のようにすれば、この問題を回避できます。
9
9
 
10
10
  ```cpp
11
11
  class Game