関数からの戻り値

関数の戻りの型が void でない限り、関数は値を戻す必要があります。

戻り値は return ステートメントで 指定します。以下のコードは、return ステートメントを含む関数定義を示しています。

int add(int i, int j)
{
  return i + j; // return statement
}

以下のコードで示すように、関数 add() を呼び出すことができます。

int a = 10,
    b = 20;
int answer = add(a, b); // answer is 30

この例では、return ステートメントは、戻された型の変数を初期化します。 変数 answerint の値 30 で初期化しています。 戻された式の型を、戻りの型と照らし合わせて検査します。 必要に応じて、すべての標準型変換およびユーザー定義の型変換が適用されます。

関数が呼び出されるたびに、自動ストレージを持つその変数の新しいコピーが作成されます。 関数が終了した後に、これらの自動変数のストレージは再利用されることがあるので、 自動変数を指すポインターまたは参照は戻してはなりません。

C++クラス・オブジェクトが戻された場合、そのクラスに copy コンストラクター またはデストラクターがあるときには、一時オブジェクトを作成することがあります。

関連参照

IBM Copyright 2003