答えて
[,]
フォームは、長方形の2次元配列を作成します。ディメンションを指定すると、それらのサイズの2次元マトリックスが得られます。すべての要素は、要素型のデフォルト値に初期化されます。
int[,] array = new int[4, 2];
メモリ通り、アレイは、(サイズwidth*height
の)メモリ内の単一のブロックとして格納されます。要素へのアクセスは少し遅く、ランタイムはより高価な操作を行います - http://blog.mischel.com/2013/05/08/are-jagged-arrays-faster-than-rectangular-arrays/
[][]
は、基本的に配列の配列です。 (彼らは最初はnull
ある)
jaggedArray[0] = new int[10];
jaggedArray[1] = new int[6];
int[][] jaggedArray = new int[3][];
は今、あなたは手動で行ごとに、new
配列を作成する必要があります:あなたはそれを作成するときは、まず最初の次元のサイズを指定しますこれの利点は、各行が異なる長さを持つことができることです。
メモリ内では、それぞれの行は別の場所に格納されますが、特定の要素へのアクセスは、実行時に基本配列の行配列へのポインタを見つけて、要素は通常の配列と同じです。
多次元配列の保存方法が異なりますか? (高さ、幅、データ、幅、データ...の代わりに 'height、width、data ...'のようにjaggedArrayと同じように) – CodenameLambda
はい、非常に異なっています。両方の説明 –
- 1. CとC++の違い(lseek())
- 2. Visual C#とCとの違い
- 3. C#とCの揮発性の違い
- 4. シリアライゼーション - C++とJavaの違い
- 5. c()とappend()の違い
- 6. C#とPHP OOPの違い
- 7. PanelとUserControlの違いc#
- 8. C#デバッグとリリースの違い
- 9. 違い、C++、C#とJavaは
- 10. スタックオーバーフロー例外C++とC#の違い
- 11. C++/CLIリファレンスクラスとC#クラスの違い
- 12. LINQ: 'Select c'と 'Select new(c ...')の違い
- 13. C# "var"とC++ "auto"の違い
- 14. C#テストプロジェクトとC#クラスライブラリの違いプロジェクト
- 15. インクリメントとデクリメントC++とJavaの違い
- 16. '//'と '///'の間のC++の違い
- 17. CスタイルのリンクリストとC++のstd :: vectorとの大きな違い
- 18. C++のプロトタイプデザインパターンとコピーコンストラクタの違い
- 19. Cの "ifndef"と "if!defined"の違いは?
- 20. C++本とクラス間のクラスの違い::
- 21. Cでのバッファとストリームの違い#
- 22. C#のConvert.ToString()と.ToString()の違いは?
- 23. Cのバイトと文字の違い
- 24. Cの_Boolとboolの違いは?
- 25. データセクションとCのbssセクションの違い
- 26. C#とJavaのBase64の違い
- 27. .hファイルと.cファイルのインクルードの違い
- 28. C#DataGridView.DataSourceとBindingSourceの使用の違い
- 29. C++(STL)のセットとマップの違い
- 30. マネージドテストプロジェクトとネイティブユニットテストプロジェクトのVisual Studio C++の違い
ドキュメントを読む必要があるので、この質問をトピックとして閉じるよう投票しています! –
http://stackoverflow.com/questions/597720/what-are-the-differences-between-a-multidimensional-array-and-an-array-of-arrays –