ホームページ  >  記事  >  バックエンド開発  >  Go 言語は動的言語ですか?

Go 言語は動的言語ですか?

青灯夜游
青灯夜游オリジナル
2023-01-06 19:18:443370ブラウズ

go は動的言語ではありません。 Go 言語は、Google によって開発された、静的に強く型付けされ、コンパイルされ、ガベージ コレクション機能を備えた同時プログラミング言語です。その変数 (変数) は明確な型を持ち、コンパイラは変数の型の正確性もチェックします。そのため、データ型は次のとおりである必要があります。変数を使用する前に宣言する場合、構文は「var 変数名 変数の型」となります。

Go 言語は動的言語ですか?

このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。

go は動的言語ではなく、静的言語です。

Go (Golang とも呼ばれる) は、Google の Robert Griesemer、Rob Pike、Ken Thompson によって開発された、静的に強く型付けされ、コンパイルされ、同時実行され、ガベージ コレクションが行われるオープン ソース プログラミング言語です。

#動的言語と静的言語の概要

  • 動的言語 (弱い型付け言語)はい データ型が実行時に決定される言語では、変数を使用する前に宣言する必要はありません。通常、変数の値は、割り当てられる値の型になります。 Php、Asp、JavaScript、Python、Perl など。

  • var s ="hello";
    var i = 0;
    var b = true;
  • 静的言語 (厳密に型指定された言語) は、変数のデータ型をコンパイル時に決定できる言語です。ほとんどの静的言語では、変数を使用する前にデータ型を宣言する必要があります。 Java、C、C、C#、Go など。

  • String s="hello";    //String 类型的变量
    boolean b=true;    //boolean 类型的变量
    int i=0;    //int 类型的变量
  • 弱い型指定言語 は、データ型を無視できる言語です。これは、変数にさまざまなデータ型の値を割り当てることができる、厳密に型指定された言語とは逆です。変数の型はコンテキストによって決定されるため、より効率的です。

  • 厳密に型指定された言語は、データ型を強制的に決定する必要がある言語です。変数に特定のデータ型が割り当てられると、強制的に変換されなければ、常にこのデータ型になります。変数の型は宣言時に決定されるため、より安全です。

Golang 変数の宣言 (var キーワードを使用)

Go 言語は静的に型付けされた言語であるため、変数( 変数) には明確な型があり、コンパイラは変数の型の正確性もチェックします。数学的な概念では、変数は固定値を持たず、変更可能な数値を表します。しかし、コンピュータ システムの実装の観点から見ると、変数はデータの保存に使用されるメモリの 1 つ以上のセグメントです。

変数を宣言する一般的な形式は、var キーワードを使用することです。

var name type

  • var は変数を宣言するためのキーワードです

  • ##name

    は変数の名前です。

  • #type
  • は変数

    ## の型です。 Go 言語は、変数を宣言するときに変数名の後に変数の型を置くという点で、多くのプログラミング言語とは異なります。この利点は、C 言語のような int* a, b; などのあいまいな宣言形式を回避できることです。 a だけがポインタであり、b はポインタではありません。両方の変数をポインターにしたい場合は、それらを別々に記述する必要があります。 Go では、ポインタ型として簡単に宣言できます:

    var a, b *int
  • Go 言語の基本型は次のとおりです:

bool

  • string

  • int、int8、int16、int32、int64

  • uint、uint8、uint16、uint32、uint64 、uintptr

  • #byte // uint8のエイリアス

  • rune // int32のエイリアスはUnicodeコードを表します

  • ##float32, float64
  • complex64, complex128
  • 変数が宣言されると、システムは自動的に次のゼロ値を割り当てます。 : int は 0、float は 0.0、bool は false、string は空の文字列、ポインタは nil など。 Go のすべてのメモリが初期化されます。
  • 変数の命名規則はラクダの命名規則に従います。つまり、最初の単語は小文字で、新しい単語の最初の文字は大文字になります (例: numShips と startDate)。

  • 変数宣言にはいくつかの形式があり、次のセクションで要約します。

標準形式

Go 言語の変数宣言の標準形式は次のとおりです:

var 变量名 变量类型

変数宣言はキーワード var で始まり、その後にキーワードが続きます。変数タイプ。行末にセミコロンは必要ありません。

バッチ形式

var を使用して各行で変数を宣言するのは面倒だと思いませんか?問題はありません。怠け者向けに変数を定義する別の方法があります。

var (
    a int
    b string
    c []float32
    d func() bool
    e struct {
        x int
    }
)

キーワード var と括弧を使用すると、一連の変数定義をまとめることができます。

短い形式

var キーワードに加えて、より短い変数定義および初期化構文も使用できます。

名字 := 表达式

短い変数宣言には次の制限があることに注意してください:

変数を定義し、明示的に初期化します。

#データ型を指定できません。
  • は関数内でのみ使用できます。
  • var 形式の宣言ステートメントと同様に、短い変数宣言ステートメントも変数セットの宣言と初期化に使用できます。
    i, j := 0, 1

    下面通过一段代码来演示简短格式变量声明的基本样式。

    func main() {
       x:=100
       a,s:=1, "abc"
    }

    因为简洁和灵活的特点,简短变量声明被广泛用于大部分的局部变量的声明和初始化。var 形式的声明语句往往是用于需要显式指定变量类型地方,或者因为变量稍后会被重新赋值而初始值无关紧要的地方。

    【相关推荐:Go视频教程编程教学

以上がGo 言語は動的言語ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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