回答編集履歴
2
単語誤り訂正
answer
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
> while や if 等が関数で無いのならばその理由を問うという意味の質問にも見られます。
|
|
14
14
|
|
|
15
15
|
関数には引数がありますが、私の知る言語はすべて、「引数を全部評価してから関数を呼び出す」です(と思ったけど例外が1つ)。
|
|
16
|
-
`foo(x(), y())`であれば、`x`として定義された関数を実行してその返り値を確保して、`y`として定義された関数を実行してその返り値を確保して2つの返り値を引数として`foo`を呼び出します(xとyの順序は
|
|
16
|
+
`foo(x(), y())`であれば、`x`として定義された関数を実行してその返り値を確保して、`y`として定義された関数を実行してその返り値を確保して2つの返り値を引数として`foo`を呼び出します(xとyの順序は未規定)。
|
|
17
17
|
`if`の機能でいうと、真部分と偽部分を両方とも実行してから関数を呼ぶことになるので、`if`と同等の関数は作れません。
|
|
18
18
|
構成要素の、どの部分をどのタイミングで評価/実行するか、あるいは最後まで評価/実行するかしないか、あるいは何度も評価/実行を繰り返すかを、条件で制御するものは一般的には関数とは呼びません。制御構造などと呼びます。
|
|
19
19
|
まあ、「実行を伴うものはなんでもかんでも関数と呼びたい」という気持ちが強いなら「引数事前評価型関数」と「引数任意評価型関数」とかと名前を付けてもいいですが、両者は別物であり、区別する必要があります。「~~型関数」と呼ぶのがいいのか「関数」と「制御構造」と呼ぶのがいいのか、どちらがいいと思いますか?
|
1
脱字追加
answer
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
ですが、どこまでの前提知識があるのかわからない人に教えるとなると、「そもそも文とは」から入らねばならず書籍数ページ分ですかね。別途質問をたてて、あなたのC++文法の理解度をわかるように書いてもらえると回答可能かもしれません。回答しないかもしれません。
|
|
9
9
|
あるいは、AIに質問して対話を繰り返すと、理解状況に合わせて説明してくれるかと思います。自分のC++理解度を説明する手間が省けます。
|
|
10
|
-
分からない人向けの説明ではないです、一言でいうと「文の最後を示す記号で、文の一部」ですかね。一部なので、例えば`continue`だけでは文でなくて`continue;`が文です。
|
|
10
|
+
分からない人向けの説明ではないですが、一言でいうと「文の最後を示す記号で、文の一部」ですかね。一部なので、例えば`continue`だけでは文でなくて`continue;`が文です。
|
|
11
11
|
|
|
12
12
|
-----
|
|
13
13
|
> while や if 等が関数で無いのならばその理由を問うという意味の質問にも見られます。
|