10 のべき乗をコンパクトな定数として書く
Go プログラミングのコンテキストでは、iota 定数を使用して 2 のべき乗をエレガントに定義できますジェネレーターでは、1000 の累乗 (KB、MB など) の定数を宣言するという課題が発生します。
ただし、言語の他の機能を利用して、この問題に取り組む創造的な方法があります。 1 つのアプローチでは、指数を持つ浮動小数点リテラルを利用します。
const ( KB, MB, GB, TB, PB, EB, ZB, YB = 1e3, 1e6, 1e9, 1e12, 1e15, 1e18, 1e21, 1e24 )
このメソッドは、すべての定数を 1 行で簡潔に表し、長さは 67 文字になります (スペースを除く)。
もう 1 つの方法このアプローチは整数リテラルを採用し、確立された KB 定数をmultiplier:
const ( KB, MB, GB, TB, PB, EB, ZB, YB = 1000, KB * KB, MB * KB, GB * KB, TB * GB, PB * KB, EB * KB, ZB * KB )
このアプローチでは、型なしの整定数が生成され、長さは 77 文字 (スペースを除く) になります。
さらに、乗算係数を表す中間定数 x を導入することにより、さらに 3 文字を保存できます:
const ( x, KB, MB, GB, TB, PB, EB, ZB, YB = 1000, x, x * x, MB * x, GB * x, TB * GB, PB * x, EB * x, ZB * x )
このソリューションでは長さが 74 になります。
最後に、ルーン リテラルを利用して 1000 定数を表すことができ、これにより別の文字が節約されます。
const ( x, KB, MB, GB, TB, PB, EB, ZB, YB = 'Ϩ', x, x * x, MB * x, GB * x, TB * GB, PB * x, EB * x, ZB * x )
このアプローチでは、ルーン定数が提供され、長さは 73 になります。
これらのソリューションは、1000 の定数乗をコンパクトに定義するためのさまざまな創造的なテクニックを示しています。 Go にはべき乗演算子がありません。
以上がGo で 1000 の累乗を定数として効率的に定義するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。