ホームページ  >  記事  >  バックエンド開発  >  C# のヒープとスタックの紹介

C# のヒープとスタックの紹介

巴扎黑
巴扎黑オリジナル
2017-09-06 11:16:001695ブラウズ

1. ヒープとは何ですか?

ヒープは、特定の種類のデータオブジェクトを保存するために大きなメモリブロックを割り当てることができるメモリ領域です;

ヒープの特徴:

1. ヒープ内のメモリは、任意の順序で保存および削除できます。
2. プログラムによってヒープに保存されたデータは、明示的に削除することはできません。解放される オブジェクトメモリは再利用可能です

2. スタックとは何ですか?

スタックはメモリ配列と後入れ先出しのデータ構造です。

いくつかのデータ型: 1. 特定の種類の変数の値

2. プログラムの現在の実行環境。

3. メソッドに与えられる転送パラメータ;

いくつかの共通特性:

1. データはスタックの先頭からのみ挿入および削除できます。

2. スタックの先頭にデータを置くとプッシュになります。

3. スタックの先頭からデータを削除する ポップになる

3. スタックとヒープの違いは何ですか?

1. 保存されるデータの種類が異なります

2. スタックは先頭からのみ挿入および削除でき、ヒープは任意の順序で保存および削除できます

3. スタックメモリは必要ありません。管理対象であり、GC によって管理されません。スタックの最上位の要素が使い果たされると、すぐに解放されます。ヒープは GC (ガベージ コレクション: ガベージ コレクター) によってクリーンアップする必要があります。 4. スタックはシステムによって自動的に割り当てられ、高速になります。しかし、制御はありません。ヒープは new によって割り当てられたメモリ ブロックであり、コンパイラはアプリケーションによって制御されます。

以上がC# のヒープとスタックの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。