登录
首页 >  Golang >  Go问答

类型“string”和“func() string”有什么区别?

来源:stackoverflow

时间:2024-04-10 10:30:37 464浏览 收藏

偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《类型“string”和“func() string”有什么区别?》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!

问题内容

我对编程非常陌生,更不用说go了...目前我一直在尝试通过http提供一些内容,并且[出于原因]我有一个字符串想要存储在单独的包中,并提供它通过函数调用回到我的主项目。 但是我收到错误(以各种形式取决于我如何更改代码):

“类型字符串和 func() 字符串不匹配”

这是“数据”包

package encodedjs
var base64encodedjs string
func readencodedjs() string {
 return base64encodedjs
}
func init() {
 base64encodedjs = "data:text/javascript;base64,largestring_blah_blah_blah=="
}

...然后是调用它的主代码

package main
import ( 
 "./encodedjs" 
)
func main() {
 js := "some text to simply show one way I've tried" + encodedjs.ReadEncodedJS
}

解决方案


encodedjs.readencodedjs qualified identifier 只是表示函数,如果按原样使用,它只是一个函数值(例如可以分配给相同函数类型的变量)。

如果你想调用它并使用它的返回值,请使用括号,例如encodedjs.readencodedjs()Spec: Calls 中有详细说明。

由于您想要连接 string 值,因此必须调用它:

js := "some text to simply show one way I've tried" + encodedjs.ReadEncodedJS()

stringstringfunc() string 是返回 string 的函数。在我看来, encodedjs.readencodedjs 是后者,要获取它返回的 string,您可以编写 encodedjs.readencodedjs()

今天关于《类型“string”和“func() string”有什么区别?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>