【Go言語】構造体が入れ子になっている場合の初期化はどうするの?
Go言語で入れ子になったstructを初期化する方法を解説します。 構造体の初期化関数を使えば入れ子になったstructを初期化することです。 以下が入れ子の構造体を初期化するサンプルコードです。 type YourSt…
Go言語で入れ子になったstructを初期化する方法を解説します。 構造体の初期化関数を使えば入れ子になったstructを初期化することです。 以下が入れ子の構造体を初期化するサンプルコードです。 type YourSt…
Go言語でゴルーチンを処理の途中で停止するには、ゴルーチンに終了のシグナルを送信するためにチャネルを使用します。 難しくないのでシンプルな解説のみ。 【Go言語】ゴルーチンを停止する方法はチャネルを使う チャネルを介して…
Go言語でスライスを関数の引数に渡すときには参照渡しされます。つまり、関数内でスライスを変更すると、引数として渡した元のスライスにもその変更が反映されます。 以下はそれを検証するサンプルコードです。 package ma…
Go言語ではオブジェクトの型を知るために reflect パッケージを使います。 reflect.TypeOf()関数は与えられた値の型を reflect.Type オブジェクトとして返します。 まずはこちらのサンプルコ…
Go言語の構造体のタグの使い方と用途をサンプルコードを使って解説します! 他の言語にないため、ちょっと理解するのに苦労しますよね。 そこで今回、丁寧にタグを使う理由や使い方を記事にしました。 構造体のタグの用途、使いみち…
Go言語でファイルが存在するかどうかを確認するには、os.Stat関数を使用します。 csvファイルや画像ファイルなどの処理に使える処理になります。 os.Stat関数でファイルの存在確認をする方法 以下、サンプルコード…
Go言語にはオプションパラメータの機能はありません。しかし、構造体のインスタンス化関数に別の構造体を使ってオプションパラメータを表現することができます。 構造体を使用するとフィールドが欠落している場合そのフィールドの既定…
Go言語にはRubyやPHPとは異なりenum型はありません。 しかし定数のセットを使用して値の「列挙」を表現できます。 Enumっぽく使えるGoのサンプルコードを書いてみます。 Go言語でEnumを表現するサンプルコー…
Go言語にはPHPにあるような foreach ループはありません。 ただし、Goにはスライス、配列、マップを反復処理するための for ループが用意されています。 スライスの要素を反復処理するために for ループを使…
Go言語で2つのスライスを連結、結合する方法を解説します。 答えをいえば、スライスを結合するにはappend関数を使用します。append関数は元のスライスの要素を含む新しいスライスを返します。 以下、Go言語で2つのス…