キューの要素タイプが配列のとき、なぜキュー排出関数はクラスタ配列を返すのですか?



使用ソフトウェア:
使用ソフトウェア・バージョン: 7.1
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A

問題:
LabVIEWでキューを使用しています。要素データタイプは、単精度浮動小数の配列を設定しています。キュー排出(Flush Queue)関数を呼び出すと、クラスタ配列を返します。クラスタは、単精度浮動小数の配列である要素が1つ含まれています。なぜ2次元配列として返されないのですか?


解決策:
キュー排出は、キュー内の各要素が異なる長さの配列である可能性があるため、2次元配列を返すことができません。たとえば、キューが2つの配列、[1,2,3] と [4,5] を保持したと仮定します。これらを2次元配列として組み合わせた場合、その行列は[[1,2,3] 、[4,5,0]]となります。2次元配列では、各行と列にある要素数が同じである必要があるため、2つ目の行には0の要素が追加されています。クラスタ配列を使用することで、各配列は異なる要素数を持つことができます。その要素にアクセスするには、まずクラスタ配列を指標配列で1次元にしてから、バンドル解除関数を使用して各配列にアクセスします。


関連リンク: 技術サポートデータベース DIRECT-3S8RDE: キューとは何ですか?

添付:





報告日時: 04/21/2004
最終更新日: 12/15/2014
ドキュメントID: 38KGDEV3