参照型の戻り値の例とその使い方


以下に、いくつかのプログラミング言語での参照型の戻り値の例を示します。

  1. C++:

    #include <iostream>
    int& increment(int& num) {
    num++;
    return num;
    }
    int main() {
    int x = 5;
    std::cout << "Before increment: " << x << std::endl;
    int& result = increment(x);
    std::cout << "After increment: " << result << std::endl;
    return 0;
    }

    この例では、increment関数はint型の参照を返します。関数内でnumをインクリメントし、その参照を返しています。main関数では、increment関数を呼び出してxをインクリメントし、その結果をresultという参照変数に格納して表示しています。

  2. Java:

    import java.util.ArrayList;
    import java.util.List;
    public class Main {
    public static List<Integer> filterEvenNumbers(List<Integer> numbers) {
        List<Integer> evenNumbers = new ArrayList<>();
        for (Integer num : numbers) {
            if (num % 2 == 0) {
                evenNumbers.add(num);
            }
        }
        return evenNumbers;
    }
    public static void main(String[] args) {
        List<Integer> numbers = List.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        List<Integer> evenNumbers = filterEvenNumbers(numbers);
        System.out.println("Even numbers: " + evenNumbers);
    }
    }

    この例では、filterEvenNumbersメソッドはList<Integer>型の参照を返します。関数内で与えられた数値のリストから偶数をフィルタリングし、結果のリストを返します。mainメソッドでは、numbersリストから偶数をフィルタリングしてevenNumbersリストに格納し、結果を表示しています。

これらの例では、関数やメソッドが参照型の戻り値を返す方法を示しています。参照型の戻り値を活用することで、プログラムの柔軟性と効率性を向上させることができます。