ホームページ  >  記事  >  バックエンド開発  >  golangでは暗黙的な変換はできないのでしょうか?

golangでは暗黙的な変換はできないのでしょうか?

(*-*)浩
(*-*)浩オリジナル
2019-12-17 14:06:182737ブラウズ

golangでは暗黙的な変換はできないのでしょうか?

いいえ、作者は、この関数は利便性よりも隠れた危険性をもたらしていると考えています。Golang では、Int と int64 は同じ型ではないため、暗黙的に変換できません。

Go プログラミング言語は、プログラマーの生産性を高めるオープンソース プロジェクトです。 (推奨学習: Go )

(言語には強力な表現力があり、シンプル、明確、効率的です。その並行性メカニズムのおかげで、その中で書かれたプログラムはマルチコアおよびネットワーク化されたコンピュータを効率的に利用することができ、その新しいタイプのシステムはプログラム構造を柔軟かつモジュール化します。

Go コードは、非常に迅速にマシンコードにコンパイルされるだけでなく、便利なガベージ コレクション メカニズムと強力なランタイム リフレクション メカニズムも備えています。 これは、動的に型付けされたインタプリタ言語のように感じられる、高速で静的に型付けされたコンパイル言語です。

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

When a variableが宣言されると、システムはその型のゼロ値を自動的に割り当てます。つまり、int は 0、float は 0.0、bool は false、string は空の文字列、ポインタは nil などです。 Go のすべてのメモリが初期化されます。

変数の命名規則はラクダの命名規則に従います。つまり、最初の単語は小文字で、新しい単語の最初の文字は大文字になります (例: numShips と startDate)。

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

標準形式

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

var 变量名 变量类型

変数宣言は、キーワード var 、ポスト変数タイプ、行末にセミコロンは必要ありません。

以上がgolangでは暗黙的な変換はできないのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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