ポインター:
ポインタはアドレスです。ポインタ変数は、アドレスを格納する変数です。
* P:間接参照、間接参照。
スタックフレームは:機能の操作のためのメモリ空間を提供するための手段。メモリ・スタックに取ります。
場合は、関数呼び出し、スタックフレームが生成されます。関数呼び出しの終わりには、スタックフレームを解放します。
メモリスタックフレーム:1.ローカル変数。2.パラメータ。(形態当量の間のローカル変数記憶位置)3.メモリの説明フィールド値
ポインタ注意:
NULLポインタ:初期化されていないポインタ。VARのp *はint * P - > ERR
ワイルドポインタ:無効なアドレス空間の初期化すること。
書式付き出力:
%のQ:表示言語形式の文字列を移動します。「」マークの付いたデフォルト
%のV:データの詳細を表示
変数は保存されます。
メモリ空間の変数点を表す左側の変数、。(書き込み)
可変メモリ空間に格納されたデータ値の代わりに、等号の右側にある変数。(読みます)
伝達関数ポインタパラメータ(参照渡し)。
送信アドレス(参照):引数として渡されたパラメータのアドレス値。
値によって(データに従って):引数の値がパラメータをコピーします。
参照によって:フレーム内のスタック、変数Bのスタックフレームの値を変更します。
スライス:
なぜスライスを使用します。
1アレイの容量が固定され、自動的に拡張することができません。
転送の値2。パラメータ配列の関数として、全体のアレイは、パラメータの値をコピーすることです。
ときに行くの言語、私たちすることができますほとんどすべてのシナリオ、スライス代替使用のアレイを使用します。
自然のスライス:
ないポインタ配列は、配列は、内部構成要素を動作させるために使用されるデータ構造です。ランタイム/ slice.goスライスタイプstruct {
* P
LEN
:CAP使用スライス
}
アレイとスライス定義の違いを。
指定された長さの配列[]アレイを作成する場合。
あなたは、スライスを作成すると、[]は空である、または...
スライス名[低:高:最大]
低:初期インデックス位置
高:=高lenの終了インデックス位置 - 低
容量:キャップ=最大 - 低
アレイの初期化スライスを撮影し、スライスは、元の配列のスライス(スライス)に追従する能力を容量が指定されていません。
S [:高:最大]:0からハイエンドまで。(同梱されていません)
S [低:]:最初から最後まで低
S [高]:0からハイエンドまで。オリジナルの容量を追跡する能力。[共通]
スライスの作成:
1.自動派生タイプは、スライスを作成します。スライス:= [] INT {1、2、4、6}
2.スライス:=メイク([] int型、長さ、体積)
3.スライス:時間=メイク([] int型、長さ)は、スライスを作成するために、容量が指定されていない、長さ==容量。[共通]
参照渡し - 関数パラメータのスライス。(転送アドレス)
追記:スライスの最後に要素を追加
追加(スライスオブジェクト、要素を追加します)
スライスする要素を追加すると、スライスの容量が自動的に拡張されます。ときは1024以下、ダブル道の増加。
コピー:
コピー(スライス内の目標位置、スライス源)
コピー処理、対応する位置の直接コピー。
地図:
辞書、マップキー - 値キー:ユニークな、順不同。あなたは、参照型のデータにすることはできません。
マップは、(キャップを使用することはできません)
やり方を作成します:
1.地図M1のvar [INT]文字列データを保存することはできません---
2. M2:=マップ[INT]列{} ---データを記憶することができます
3. M3:=(マップ[INT]列)を作る---デフォルトLEN = 0
4. M4:=(マップ[INT]列、10)を作ります
初期化:
1 VAR Mマップ[INT]ストリング=マップ[INT]ストリング{1: "AAA"、2: "BBB" は}そのキーを確実にするために互いに重なりません。
2. M:=マップ[INT]ストリング{1: "AAA"、2: "BBB"}
割り当て:
割り当てプロセス、重要な要素は、元のキーマップ要素と同じである場合、新しいマップ - >カバー(代替)
割り当てプロセスは、新しいマップとキーの元のマップ異なる要素の重要な要素があれば - >追加します
マップを使用してください:
マップを横断:
值キー值、値は:=レンジマップ{
}
值キーの:=レンジマップ{
}
マップキーを分析する存在します。
地図【インデックス】操作は:2つの値を返す値が存在しない場合、最初の値が、値の表です。nilに
存在する場合、第2の鍵テーブルbool型。真があり、falseが存在しません。
マップを削除します。
文献1:特許文献2削除する地図要素:キー値()関数を削除
存在しないキーではなく、エラーを削除するには(マップ、キー)を削除します。
関数の引数と参照渡し、戻り値のマップ。