この章では、基本のgolangのいくつかを説明します。C ++でのgolangは、それがより多くのC ++ / Javaの/のpythonのミックスのようなものです、その後、追加および削除の一連の後の事の後、私の意見では、非常に異なる書き込みます。
最大の特徴はgolangすることは、唯一の25のキーワードに簡単です、それは静的な言語ですが、動的な実行時の型をサポートしていますけれども、それはサポート暗黙の型推論ということだけではなく、強く型付けされた言語です。golangジェネリックはサポートされていますが、サポート反射されていません。golangは、GC、およびコルーチンをネイティブでサポートしています。
1つの パッケージメイン 2 3インポート" FMT " 4 5 FUNCメイン(){ 6 fmt.Println(" こんにちは、世界!" ) 7 }
最初の行は、それが実行可能なプログラムのパッケージ名で、メインと呼ばれるパッケージを定義します。すべてのコードゴーヘッドは、パッケージを介して名前空間を管理するために行く、パッケージ宣言を持っている必要があります。
標準IOパッケージであるパッケージFMT、第3ラインインポート外部参照。標準ライブラリは、インポート、あるいはカスタムのサードパーティ製のパッケージによって参照することができます。
他の行は意味非常に明らかにされています。
ソース機能を行く非常に明確である:サフィックスを.GOするために、仲間と{FUNCで始まる機能、および;セミコロンを無視し、デフォルトのUTF8エンコーディングメイン関数名がメインである必要がありますバッグ。
基本データ型をCと比較してわずかな変化を行く++、それは文字がcharではないことは注目に値するが、ルーンです。
int型との互換性はありませんブール値。
int型の異なるタイプにキャストする必要があります。
浮動小数点リテラルは自動的にのfloat64を推論しています。
文字列と文字列のJavaは、のように定数です。しかし、それはスライスで動作させることができます。尾はヌル文字が含まれていません。返されたスライス部分文字列の文字列は、まだスライスではありません。
サポートポインタを行きます。> - 構造体ポインタは、まだ構造体のフィールドの代わりにアクセスするために使用します。ノーgolang - >演算子。
ポインタが元の配列に、スライスの数とその下にあるアレイ素子容量:golangスライスは、3つの要素を維持します。あなたは、配列をスライスを作成して、組み込み関数を作ることができます。
マップはリテラルによって作成することができ、あなたはメーク機能によって作成することができます。内蔵のマップgolangは、同時安全ではありませんし、マップ内の標準パケット同期を使用することによって解決することができます。元素マップ値は、個別に変更することができないだけ全体置換値によって解決することができます。
構造体の型は、任意のタイプであってもよく、構造体の収納スペースは、連続的であり、宣言の順に格納され、そのフィールドは、フィールド間の位置合わせが必要とされます。
Golangコード配列は、必ずしもコンパイルされた命令の最終実行可能プログラム順序ではありません。
唯一の循環のためのgolang。
比較のためのその他のコンテンツの基礎、それらを繰り返しません。