1
for pos, char := range s {
        fmt.Println( utf8.RuneLen(char) )
}

このコードは Go (v1 より前) では機能しますが、Go1 では機能しません。

関数の引数で型 rune として char (型 []int) を使用することはできません

「utf8」インポートを「unicode/utf8」に更新するgo fixを実行しましたが、以前のエラーが発生しました。

ルーンのドキュメントには、簡単な変換でこのエラーが解決されることが記載されています。

4

1 に答える 1

4

投稿したコードは Go1 で動作します。文字列であると仮定sします。

chartype を持つ名前の他の変数を予期せず導入または使用していないことを[]int確認し、別の変数の予期しない使用につながるコードのタイプミスがないことを確認してください。

于 2012-04-13T16:13:27.353 に答える