第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

這是由于“[]int”是一個接口么?還是說以“[]int”定義的就是一個slice?待確定

這是由于“[]int”是一個接口么?還是說以“[]int”定義的就是一個slice?待確定

Go
紫衣仙女 2023-04-14 17:13:49
一個很微妙的一個問題。從下面的代碼可以看出:1、類型為“[5]int”的數(shù)組在作為參數(shù)時,其實作為值來傳遞的。2、 類型為“[]int”的數(shù)組在作為參數(shù)時,其實作為引用來傳遞的。代碼片段(2):[代碼] 數(shù)組作為參數(shù)時的值傳遞package mainimport "fmt"func modify(array [5]int) {  array[0] = 10   fmt.Println("In modify(), array values:", array) }func main() {  array := [5]int{1,2,3,4,5}   modify(array)   fmt.Println("In main(), array values:", array) }運行結(jié)果:In modify(), array values: [10 2 3 4 5]In main(), array values: [1 2 3 4 5][代碼] 數(shù)組作為參數(shù)時的引用傳遞package mainimport "fmt"func modify(array []int) {  array[0] = 10   fmt.Println("In modify(), array values:", array) }func main() {  array := []int{1,2,3,4,5}   modify(array)   fmt.Println("In main(), array values:", array) }運行結(jié)果:In modify(), array values: [10 2 3 4 5]In main(), array values: [10 2 3 4 5]
查看完整描述

3 回答

?
侃侃無極

TA貢獻2051條經(jīng)驗 獲得超10個贊

[]int和[5]int這兩種表達方式在Go語言里有根本性的區(qū)別。[]int不是數(shù)組,而是數(shù)組切片(slice),而[5]int是一個數(shù)組。在Go語言中,數(shù)組是值類型,而數(shù)組切片是引用類型。

值類型變量在函數(shù)調(diào)用時的參數(shù)傳遞中會被完整拷貝一次變量內(nèi)容,之后函數(shù)內(nèi)操作的只是這個拷貝的副本。這是第32頁例子中所表現(xiàn)出來的,函數(shù)內(nèi)對數(shù)組的修改不會影響函數(shù)外的原始數(shù)組內(nèi)容的原因。一般而言,參數(shù)類型會選擇數(shù)組切片而非數(shù)組,以避免拷貝所導致的性能損耗。


查看完整回答
反對 回復 2023-04-17
?
呼如林

TA貢獻1798條經(jīng)驗 獲得超3個贊

第一種是數(shù)組,go中數(shù)組是值類型
第二種是slice,是引用,不過 array := []int{1,2,3,4,5},也會產(chǎn)生一個匿名的數(shù)組。

查看完整回答
反對 回復 2023-04-17
?
開滿天機

TA貢獻1786條經(jīng)驗 獲得超13個贊

package main

import "fmt"

func modify(array []int) {

  array[0] = 10

  fmt.Println("In modify(), array values:", array)

}

func main() {

  array := [5]int{1,2,3,4,5}

  modify(array[0:])

  fmt.Println("In main(), array values:", array)

}


查看完整回答
反對 回復 2023-04-17
  • 3 回答
  • 0 關注
  • 206 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號