関数を*に戻すにはどうすれば関数が何かを返すことができ、それに応じて型変換することができますか?actionscriptで何かを返す関数を作成するには
この関数では、この関数はtilelistとdataagridの両方を変更する必要があるとします。
Plz教えて ありがとう。
関数を*に戻すにはどうすれば関数が何かを返すことができ、それに応じて型変換することができますか?actionscriptで何かを返す関数を作成するには
この関数では、この関数はtilelistとdataagridの両方を変更する必要があるとします。
Plz教えて ありがとう。
戻り値の型を定義する必要はありません。
private function get_current_files_view() { }
それとも、あなたは、可能性があり、それが何かを返す必要があること、それを定義しますが、何も
private function get_current_files_view():* { }
またはことができます。そうしないと、あなたは何か何も(推奨されません)を返すことができます
これは役立ちますか?具体的にするには、インターフェイスまたは基本クラスを使用してください。あるいは私はあなたの質問を完全に誤解していますか?
+1は、インターフェイスを使用するための提案です。私はそれがreturn型として*を持つよりはるかに優れた開発アプローチだと考えています。 – JeffryHouser
厳密なモードのFlexコンパイラは、戻り値のないメソッドを受け付けません。戻り型を常に定義することがベストプラクティスです。 –
@TandemAdam:合意。私は特に私のルーチンを関数(何かを返す... *、型、オブジェクトなど)または手続き(voidを返す)として定義するのが好きです。呼び出し側が返品を期待するかどうかは明らかです。その提案を追加するために私の回答を編集します。私の変数は静的な型定義と動的な型定義に混在しています。しかし、関数では何かを指定する必要があります。 –
private function whatsMyObject:(parameter:*):*
{
switch (parameter.constructor)
{
case TileList: trace("parameter is TileList");
break;
case DataGrid: trace("parameter is DataGrid");
break;
default: trace("parameter is neither TileList nor DataGrid");
}
return parameter;
}
文書化されていない 'constructor'プロパティではなく' is'を使うのが常に良いです。サブクラスもキャッチします。 –
コンストラクタが文書化されています:http://help.adobe.com/jp/FlashPlatform/reference/actionscript/3/Object.html#constructor – TheDarkIn1978
+1はい、私はそれに同意します。非常に頻繁に(ただし必ずしもそうではありません)、*は警官です...特にあなたがそれが2つのタイプのうちの1つにしかならないことを知っているならば。私は 'ListBase'を使うのが好きです。あなたが本当に何かを返すことができるとき*を返すことは素晴らしいです。私たちがAS3でジェネリック医薬品を手に入れることができれば、大部分のリターンは代わりにジェネリック医薬品となるでしょう。 –