【Go言語】declared and not usedというエラーは何?どうやって解消する?

Go言語を使っていると必ず目にするエラーの”declared and not used”。

日本語の意味としては”宣言されているけど使われていない”です。このエラーの意味と解消する方法について解説します!

declared and not used

このエラーは、変数が定義されているのに使われていない、という意味になります。

変数に代入してたのに、コードのどこにも使われていない場合に出るケースが大半だと思います。

 

declared and not usedの解消方法

2つの方法があると思います。

関数の戻り値を受け取る変数にアンダースコアを使う

めちゃくちゃ端的にいうとこうなります。

_ = variable

変数をアンダースコア(_)にするとコンパイラがその変数を使用しなくてもエラーを出さなくなります。ただし、この方法は変数を無視することを意図している場合に限り使ってください。

実践的なサンプルコードとしてはこちらです。

filename := "myfile.txt"
_, err := os.Stat(filename)

 

使われていない変数がないかコードを見直す

宣言されているが使用されていない変数が存在する場合、それはコードが冗長である可能性があります。コードを整理して不要な変数を削除するとエラーを回避することができます。

またはコードでその変数を使うべきなのに、エンジニアがそれを見落として使われていない場合には正しく変数を使うようにしましょう。