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

回答編集履歴

1

やっぱり、関数の返却値に値渡し、参照渡しはつかわないので修正

2017/10/04 00:25

投稿

mit0223
mit0223

スコア3401

answer CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  > 「値渡し」や「参照渡し」という用語は引数で渡すときしか使わない
7
7
 
8
- 一般論として正しいと思いますが、関数の返却値でも使うかもしれません
8
+ 一般論として正しいと思います。
9
9
  ただし、質問者さんが注目すべきは言葉を「使う」、「使わない」よりも、 「値渡し」や「参照渡し」というのは、仮引数を変数として参照した場合にどう解釈されるかの話であるのに対して、シャローコピー、ディープコピーはメモリ上の配列や構造体などのコピーという処理を行う際にどのような動作になるかという処理内容の話です。
10
10
  微妙なのは C言語の構造体代入のように、代入と言っておきながらコピーしたりするものがあるので若干混乱しますが、そんな特殊な場合を除くと、明示的にコピーしろと言わない限り、変数の代入や引数渡しで配列や構造体のコピーが行われることはありません。
11
11