以下に、いくつかのプログラミング言語での参照型の戻り値の例を示します。
-
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
という参照変数に格納して表示しています。 -
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
リストに格納し、結果を表示しています。
これらの例では、関数やメソッドが参照型の戻り値を返す方法を示しています。参照型の戻り値を活用することで、プログラムの柔軟性と効率性を向上させることができます。