コンテンツにスキップ

関数の返り値を捨てる

概要

YAYAでは、関数を呼び出した際の返り値が変数に代入されない場合、その値が出力候補となります。これにより、意図せず「0」や「1」などがバルーンに表示されてしまうことがあります。このページでは返り値を捨てる方法を説明します。

問題の例

// SRAND関数は返り値を返すので出力候補になる
// 50%の確率で「0」か「1」が表示されてしまう
OnBoot {
    乱数のシードを設定
    SRAND("ほげほげ")
    "\0\s[0]おはよう。\e"
}

解決方法1: 変数への代入

返り値を一時変数に代入することで、出力候補から除外できます。

_hoge = SRAND("ほげほげ")

解決方法2: void キーワード

voidを使って返り値を明示的に破棄します。

void SRAND("ほげほげ")

説明

voidは代入演算子(=)を使わずに返り値を直接破棄します。_hoge = SRAND(...) との違いは、変数への代入が行われない点です。

どちらの方法でも問題を解決できますが、返り値が不要であることを明示したい場合はvoidの使用が意図をより明確に表現できます。

関連項目

  • マニュアル/関数/SRAND
  • マニュアル/文法/関数