tonari note

オンラインゲームエンジニアの雑記

Tupleのお話

Tupleとは組という意味だそうです。
ダブル、トリプルといった単語もこの言葉からきているようです。
Tupleの意味(weblio)

プログラムでは、一時的に複数のオブジェクトをひとまとまりにする際に使用します。
C#では、Tupleクラスが4.0から追加されました。

Tuple クラス(MSDN)

メソッドの引数にしたり、等価比較をする際に便利です。

ただしタプルは外から見たら中身がなんなのか分かりにくいので、使用する際はタプルを作成したクラスの中だけで完結することが好ましいです。

Unity(Mono)で使用する場合

UnityだとTupleクラスは使用できません。
Unity上で単純に複数のオブジェクトを一時的にまとめるのであれば匿名型が便利です。

また、匿名型で等価比較をする場合、Equalsメソッドを使用します。


どうもUnityの匿名型はエラーが出るらしい、ので、今はUniRxのTupleなどを使うのをオススメします。