当前位置: 首页 > 面试题库 >

如何通过引用返回切片?

解宏扬
2023-03-14
问题内容

按引用返回的切片为空:

package main

import "fmt"

func GetItems(items *[]string) {
    list := make([]string, 0)
    list = append(list, "ok")
    items = &list
}

func main() {
    var items []string
    GetItems(&items)
    fmt.Print(len(items)) // expect 1 here, but got 0
}

如何通过引用从函数返回切片?


问题答案:

通过分配给items,您可以更改items指向的位置,而不是items指向的值。要做后者,而不是items = &listwrite
*items = list



 类似资料:
  • 问题内容: 我对Java没有太多的经验。我不确定这个问题是否很愚蠢,但是我需要从Firebase实时数据库中获取一个用户名,并通过此方法返回该名称。因此,我想出了如何获得该值,但是我不明白如何通过此方法返回它。最好的方法是什么? 问题答案: 这是异步Web API的经典问题。您现在无法返回尚未加载的内容。换句话说,您不能简单地创建一个全局变量并在onDataChange()方法外部使用它,因为它将

  • 问题内容: 我需要通过popView将一些数据从secondView发送回First View。如何通过popViewControllerAnimated发回数据? 谢谢! 问题答案: 您可以使用 创建于 在以下位置创建变量 在扩展协议 提供参考的时 在中定义方法 然后您可以从 例 在ChildViewController中 : 在 下面编写代码… 在MainViewController中 有两种

  • 问题内容: 我刚遇到一个错误。 当我尝试分配这样的对象时: 我得到的错误是“不赞成通过引用分配new的返回值”。实际上,我一直在寻找解决方案,但是我唯一看到的就是拒绝php.ini的政策(error_reporting)。我也尝试过,但是没有用。 真令人困惑。希望您能帮助我。提前致谢。 问题答案: 在PHP5中,不赞成使用这种用法 您确定您没有在示例代码中漏号吗?这将生成您声明的警告,但是它不是必

  • 问题内容: 我想我在这里遗漏了一些东西: 使用AjAX,我从数据库中获取了一些数据,并以JSON格式将其发送回去。$ jsondata = array(); 到目前为止,我认为没有问题。 在回教士方面,我将以上内容接收回 如果我这样做 我看到了我希望看到的内容,即警报中的整个阵列。 一切出错的地方就是尝试访问响应。我得到的错误是“ categoriesObject”不是对象- 如果不是,它是什么?

  • 我正在编写一个自定义配置单元UDF来根据属性文件中定义的值解析映射中的键/值对。正在验证的格式(map ,String)。目的是让第一个参数是要计算的映射,第二个参数包含属性文件。 我遇到的问题是,GenericUDF类似乎希望这两个值对查询都是动态的,因为initialize()函数将参数转换为ObjectInspectors,从外观上看,这没有可能的选项来返回它们所检查的对象。 我希望init

  • 问题内容: 我最近看到,可以声明一个返回类型,该返回类型也受接口限制。考虑以下类和接口: 我可以这样声明一个返回类型: 如果我从某个地方调用该方法,那么IDE会告诉我返回类型具有方法以及,但是仅当我在 Function 后面指向一个点时才这样: 有没有办法获得对这样一个对象的引用?我的意思是,如果我愿意做这样的事情: 我想有一个这样的参考(伪代码): 这在Java中是有可能的,还是我只能声明这样的