値を返した後に関数内でアクションを実行する方法があるかどうか疑問に思っていました。戻り値の後にアクションを実行
つまり、文字列を返すメソッドがあります。文字列が返された後、メソッドが条件が満たされているかどうかをチェックして通知などを送信できるように、メソッドが別のアクションを実行するようにします。それはどういうわけか可能ですか?
私はアプリケーションにいくつかのプロットを追加するためにcore plotというフレームワークを使用しています。残念ながら、このフレームワークにdidFinishAddingPlotメソッドはありません。だからプロットがプロットを終えるたびに私に通知する仕組みを手動でプログラムする必要があります。 addPlotメソッドが呼び出されると、値の配列を通り、特定のインデックスの値をプロットする別のメソッドが呼び出されます。私の考えは、インデックスがmy values配列の数と等しいかどうかを調べるために "if(condition)"ブロックを入れて、最後の値をフェッチしていることを知っていました。しかし、最初にプロットを完了したというメッセージを送る前に値を返す必要があります。それ以外の場合、最後の値は渡されません。
これはおそらく、あなたが望むことをするために、何らかの形のメッセージパッシングシステムとマルチスレッドが必要になるでしょう。戻り値の後に何かを行うことは可能ではないだけでなく、呼び出しを行っている関数が実行を再開するまで返された値を受け取らないので非常に有用ではありません。 – Hobblin
このメソッドの目的が文字列を返すことである場合、文字列に関連しないものを実行すると、おそらくデザインが悪くなります。 –
私の編集をチェックしてください – iJatrat