参照渡し |
辞書:電算用語の基礎知識 プログラミング仕様編 (PTPROGS) |
読み:さんしょうわたし |
品詞:名詞 |
|
概要 |
C++では、C++で追加されたクラスの実装を自然にするため、特に、代入演算子などのオーバーロードやコンストラクターを書きやすくするために、参照渡しが作られた。
なお、参照渡しに対応するプログラミング言語は多くはない。他のプログラミング言語は、ポインター渡しに似た「参照の値渡し」として実装されることが多い。
特徴 |
用途 |
参照渡しで引数を与えると、受け側の関数は、その変数を参照として受け取る。
参照とはつまり変数の別名であるので、参照渡しを受け取った関数内では、それを元の変数そのもののように扱うことができる。
なお、参照渡しはポインター渡しとは違い、引数にNULLポインターを渡す、というような操作はできない。
使用例 |
参照渡し受ける側の関数は、引数を参照として定義するため、引数の変数名にアンパサンド記号(&)を冠する。
void hoge(int &var) { var = 123; }
関数を呼ぶ側は、特に演算子を付けず、値渡しと同様に記述する。
int fuga() { int num = 0; hoge(num); return num; }
呼ぶ側からは、見ただけだと値渡しなのか参照渡しなのか分からないという難点がある。
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |