LoginSignup
3
5

More than 5 years have passed since last update.

呼び出し元の Self を引数のデフォルト値にする方法

Posted at

例えば、関数ライブラリに以下のような関数を作ったとします。

image

この関数の Target には呼び出し元の Self を指定させたいわけですが、毎回 Self を指定させるのは面倒です。

そこで、Target のデフォルト値に Self にします。
この方法は、C++ で関数を定義する場合のみ使えます。(ブループリントでの方法はわかりませんでした。)

引数に Self を指定させたい場合、UFUNCTION のメタデータに以下を追加します。

DefaultToSelf="引数名"

先ほどの関数の場合、以下の様な定義になります。

UFUNCTION(BlueprintCallable, Category = "Test", meta=(DefaultToSelf = "Target"))
static void DisplayName(UObject* Target);

こうすることで、Target に何も指定されていない場合は、デフォルト値に Self が入るようになります。
(ただし、ノード上の見た目は変わりません。)

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5