UE5/UE4 C++の関数で複数の戻り値(返り値)を持つ
C++の関数で複数の戻り値(返り値)を持つ方法です。
こちらを参考にさせていただきました。
・UE4 C++で作ったBPの実行ピンや出力ピン、戻り値を複数にする方法メモ
https://tamfoi.hatenablog.com/entry/2016/06/02/095807
関数の戻り値(返り値)を複数持たせたい場合は、引数に「&」を付けてあげて参照にするだけで問題なさそうです。
こんな感じで引数「Value1」を参照にしてあげます。

無事参照にした引数「Value1」が戻り値となりました。
というわけで複数のパターンを検証してみました。
まずは普通の関数の書き方での戻り値の場合。

次に引数を参照にして一つ作成しました。

次に通常の戻り値と参照による戻り値を混ぜてみました。
それぞれ名称が「Return Value」と指定した「Value1」というものになりました。

最後に参照による戻り値を二つ設定してみました。

といったことから、個人的には特に関数名がわかりやすいもので一つだけの戻り値の場合は通常のものを使い、
戻り値の名称をきっちり設定したい場合は参照設定での戻り値にするのが良いのかなと思いました。
こちらを参考にさせていただきました。
・UE4 C++で作ったBPの実行ピンや出力ピン、戻り値を複数にする方法メモ
https://tamfoi.hatenablog.com/entry/2016/06/02/095807
関数の戻り値(返り値)を複数持たせたい場合は、引数に「&」を付けてあげて参照にするだけで問題なさそうです。
こんな感じで引数「Value1」を参照にしてあげます。
結果はこんな感じになります。UFUNCTION(BlueprintCallable)
void GetReturnValue2(int32& Value1);

無事参照にした引数「Value1」が戻り値となりました。
というわけで複数のパターンを検証してみました。
まずは普通の関数の書き方での戻り値の場合。
結果はこんな感じになり、戻り値は「Return Value」で固定されるようです。UFUNCTION(BlueprintCallable)
int32 GetReturnValue1();

次に引数を参照にして一つ作成しました。
結果はこんな感じになり、引数の名称の戻り値が作成されました。UFUNCTION(BlueprintCallable)
void GetReturnValue2(int32& Value1);

次に通常の戻り値と参照による戻り値を混ぜてみました。
結果はこんな感じでちゃんと複数になり、UFUNCTION(BlueprintCallable)
int32 GetReturnValue3(int32& Value1);
それぞれ名称が「Return Value」と指定した「Value1」というものになりました。

最後に参照による戻り値を二つ設定してみました。
結果はこんな感じに引数で指定した名称の戻り値が複数作成されました。UFUNCTION(BlueprintCallable)
void GetReturnValue4(int32& Value1, int32& Value2);

といったことから、個人的には特に関数名がわかりやすいもので一つだけの戻り値の場合は通常のものを使い、
戻り値の名称をきっちり設定したい場合は参照設定での戻り値にするのが良いのかなと思いました。
| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑