ホームページ >バックエンド開発 >Golang >コンパイル時以外の式で Go 定数を宣言するにはどうすればよいですか?

コンパイル時以外の式で Go 定数を宣言するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-08 09:36:12441ブラウズ

How Can I Declare Go Constants with Non-Compile-Time Expressions?

コンパイル時以外の式を使用した const 変数の宣言

Go では、const 変数はコンパイル時に評価できる値を表す必要があります。その結果、関数呼び出しを使用して const 変数を初期化しようとすると、エラーが発生します。これは、関数がコンパイル時ではなく実行時に実行されるためです。

受け取ったエラー メッセージ「const 初期化子 math.Pow10(3) は定数ではありません」は、関数 math.Pow10(3) を示しています。 KILO の初期化に使用されるものはコンパイル時に評価できません。

回避策: リテラルを使用してください値

コンパイル時以外の式で const 変数を宣言するには、代わりにリテラル値を使用する必要があります。たとえば、整数リテラル:

const Kilo = 1000

または浮動小数点リテラル:

const Kilo = 1e3

変数の使用

If定数の値を計算するには関数を使用する必要があります。定数を const に格納することはできません。 変数。代わりに、通常の変数として宣言します:

var Kilo = math.Pow10(3)

これにより、関数呼び出しを実行時に実行できるようになります。

代替定数宣言構文

Go 定数の広範な概要については、ブログ投稿「定数」を参照してください。さらに、10 の累乗を定数として宣言するためのコンパクトな構文を調べることができます。

以上がコンパイル時以外の式で Go 定数を宣言するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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