-3
私はGoLangのメソッドを試しています。私は初心者ですので、私が愚かな質問をしている場合は私を修正してください。 linkは、メソッドを通常の関数として記述できると言います。私は、次のコードをしようとすると、しかし、それはしかし、予想通り、次のコード内のコメント行が作業している GoLangメソッドでコンパイルエラーが発生するのはなぜですか?
a.sq undefined (type MyFloat has no field or method sq)
として私は、エラーをコンパイルできます。 私を助けてください。以下は私のコードです:
package main
import (
"fmt"
)
type MyFloat float64
func sq (f MyFloat) string {
return fmt.Sprintln("The square is: ", f*f)
}
/*func (f MyFloat) sq() string {
return fmt.Sprintln("The square is: ", f*f)
}*/
func main() {
a := MyFloat(2.0)
fmt.Println(a.sq())
}
GoLangの通常の機能として "メソッド"を書く方法を教えてくれるリンクを確認してください。また、私のコードでは、両方の方法についても言及しています。 –
ツアーが伝えようとしていることは、メソッドが機能だということです。それは関数がメソッドであることを意味するものではありません。したがって 'func sq(f MyFloat)string'はメソッドではなく、' a.sq() '形式で呼び出すことはできません。 – yazgazan
それは私の質問のコメントコードがメソッドを使用するための最良の方法だということですか? –