ヴァラで次のことを試しましたが、アサーションが失敗します。
int[] x = {1,2};
int[] y = {1,2};
assert( x == y );
Valaは、配列の内容ではなく、xとyのメモリ位置を比較していると思います。2つの配列をvalaでループせずに比較する簡単な方法はありますか?
ヴァラで次のことを試しましたが、アサーションが失敗します。
int[] x = {1,2};
int[] y = {1,2};
assert( x == y );
Valaは、配列の内容ではなく、xとyのメモリ位置を比較していると思います。2つの配列をvalaでループせずに比較する簡単な方法はありますか?
生成された C コードは実際に配列ポインターを比較します。
g_assert (x == y);
struct
それらは「値」タイプと見なされるため、深く比較されています。配列は一種の「参照」型であり、代入または関数呼び出しを行うときに深くコピーされません (スタック上にありません)。
実際、要素をループする必要があります。
配列とコレクションの比較のサポートは、Geeに追加する価値があるかもしれません