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

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

為什么要使用make()在Go中創(chuàng)建切片?

為什么要使用make()在Go中創(chuàng)建切片?

Go
紅顏莎娜 2021-05-14 14:15:27
var a [4]int和之間有什么區(qū)別b := make([]int, 4)?在b可擴展,但不是a吧?但是,如果我知道我確實需要4個元素,那么數(shù)組快于切片嗎?有沒有之間的性能差異var d []int和e := make([]int)?f := make([]int, 5)如果沒有第一個元素(即5個元素)的長度,是否會提供更多的性能?這c := make([]int, 5, 10)不會分配比我可以訪問的更多的內(nèi)存嗎?
查看完整描述

1 回答

?
叮當貓咪

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

  • a是一個數(shù)組,并且b是一個切片。使slice與數(shù)組不同的原因是slice是指向數(shù)組的指針;它是數(shù)組的指針。slice是引用類型,這意味著如果您將一個slice分配給另一個,則兩個都將引用同一個基礎(chǔ)數(shù)組。例如,如果一個函數(shù)接受了slice參數(shù),則對切片元素所做的更改將對調(diào)用者可見,這類似于將指針傳遞給基礎(chǔ)數(shù)組(見Learning Go)。您可以輕松地使用appendcopy切片。數(shù)組應(yīng)該比切片快一點,但是差別不大。除非您確切知道大小,否則最好使用切片使事情變得容易。

  • make([] type,length,Capacity),您可以估計大小和可能的容量以提高性能。


查看完整回答
反對 回復(fù) 2021-05-31
  • 1 回答
  • 0 關(guān)注
  • 597 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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