-1

私はそれをグーグルで試しましたが、確かな答えはありません。利用可能で、まだ維持されている C の動的配列実装は何ですか? それらのそれぞれの長所と短所は何ですか?また、最良のもの(速度/フットプリント比)は何ですか? 車輪を再発明する必要がないように、ただ尋ねるだけです。

4

2 に答える 2

4

GLibの GArrayは、あなたが望むことを行います。

于 2012-12-27T17:17:13.420 に答える
2

Objective-C の NSMutableArray のようなもの、または Java の ArrayList のようなものを探している場合、何も見つかりません (少なくとも std C)。ただし、C で独自の動的配列実装を作成することはできます。数行のコードで済み、実装はそれほど難しくありません。

覚えておく必要があるのは、時間とメモリだけです。要素をプッシュ/追加するたびに、より大きなサイズの新しい配列を割り当てる実装を実行してから、戻り値または参照によってそれをポップするか、毎回メモリを再割り当てすることができます。realloc は C ライブラリ関数であり、低レベルで実装されていると思われることを除いて、どちらにも大きな利点はありません。つまり、おそらく高速であり、実装の問題では、より高速であるため、realloc を使用します。埋め込む。タイプをソートし、すべてのメソッドを消去する API を作成することもできます。

今はあなた次第です。

お役に立てれば。

于 2012-12-27T17:22:17.053 に答える