構造体のスライスが関数の戻り値になるのかどうか go言語です

構造体のスライスが関数の戻り値になるのかどうか go言語です 参考ページhttps://qiita.com/yosuke_furukawa/items/5fd41f5bcf53d0a69ca6 type Result struct { Url string } func ParseItem(r io.Reader) [ ]Result { 略 } とあり、io.Readerはrの型になるのでしょうか?r intとかであればわかるのですがio.Readerの型とはどういう意味になるのでしょうか? func GoGet(urls []string) <-chan [ ]Result { 略 } また<-chan [ ]Resultはどういう意味になるのでしょうか? Result構造体をスライスにしたものが戻り値になりそれがチャネルになる?? 意味がわからないので教えて欲しいです よろしくお願いします

ベストアンサー

0

r io.Reader ioパッケージで定義されている、Readerインターフェース型のr変数。 <-chanはマルチスレッドを使用するときに必要なもの(チャネル)で、Resultの配列を持っています。 とりあえず、もっとプログラムを理解してからマルチスレッドに進むようにしましょう。

すいません。ご回答ありがとうございます >func GoGet(urls []string) <-chan [ ]Result GoGet(urls []string)は関数(変数 型)だと思うのですが、 <-chan [ ]Resultはセットで戻り値で良いのでしょうか? 戻り値は変数名と型の指定はできるのは知っていたのですがチャネルというものを指定するとどうなるのでしょうか? それと、[ ]がスライスでなく配列と言えるのはどうしてなのでしょうか?