値渡し・ポインタ渡し・参照渡しの復習。(参照渡しはC++で導入された考え方)値渡しC言語の基本は、値渡し。呼び出し側の実引数は、関数側の仮引数に値がコピーされる。このため、呼び出し側の変数(下の例ではa)の中身は変化しない。よって、関数の呼び出しで呼び出し側の変数が勝手に中身が変わらないので、予想外の変数の中身の変化が無く分かりやすい。124が表示}ポインタ渡ししかし、上の例では、foo()の呼び出しで、変数aの中身が変化してくれたほうが都合が良い場合もある。この場合は、C言語ではポインタを使って記述する。このように、関数を呼び出して、手元の変数が変化することは、副作用と呼ばれる。副作用の多いプログラムは、変数の値の管理がわかりにくくなるので、副作用は最小限に記述すべき。125が表示}参照渡ししかし、ポインタを多用すると、ポインタを動かしてトラブルも増えることから、ポインタはあまり使わない方が良い。そこで、C++では参照型というものがでてきた。125が表示}参照型は、ポインタを使っていないように見えるけれども、機械語レベルでみればポインタを使ったものと同じ。仕事ができることを説明。データ入力とデータ出力を行うことはある程度理解できる。データ実装者はプログラムを記述できる。これをデータ構造の隠蔽化という。関数名から動作は推測できプログラムも書ける。これを手続きの隠蔽化という。上記のプログラムをそのままC++に書き直すと以下のようになる。pのように対象のオブジェクトを明記する必要はない。注意ここのセミコロンを書き忘れないこと。phoneはprivateなので参照できない。;}用語の解説:C++のプログラムでは、データ構造とデータの処理を、並行しながら記述する。データ構造に対する処理は、メソッド(method)と呼ばれる。データ構造とメソッドを同時に記載したものは、クラス(class)と呼ぶ。そのclassに対し、具体的な値や記憶域が割り当てられたものをオブジェクト(object)と呼ぶ。miniOrange。