当前位置: 首页 > wzjs >正文

网页游戏网站大全突袭整合营销传播案例分析

网页游戏网站大全突袭,整合营销传播案例分析,权威的大连网站建设,北京网络营销北京根据之前学习python和java的经验,每次学习一门新语言时,一定要搞清楚方法的参数传递是值传递,引用传递还是指针传递。 主要原因就是需要知道,某种类型的数据传递给某个方法后,方法里面对它的修改是否会影响到这个数据本…

根据之前学习python和java的经验,每次学习一门新语言时,一定要搞清楚方法的参数传递是值传递,引用传递还是指针传递。
主要原因就是需要知道,某种类型的数据传递给某个方法后,方法里面对它的修改是否会影响到这个数据本身。

结论

在 Go 语言中,所有方法的参数传递都是值传递(Pass by Value)。这意味着无论是基本类型(如 int、string)、结构体,还是引用类型(如切片、映射、通道、指针等),传递给方法的始终是参数的副本。不过,对于引用类型或指针来说,虽然传递的是副本,但这些副本中保存的是指向底层数据结构的指针,因此可能表现出类似“引用传递”的行为。

基础数据类型

像字符串类型,数值类型就不用多说,传递到方法中的是拷贝。

struct

传递到方法中的是拷贝。

slice

切片本质上也是一个结构体。在runtime/slice.go中有如下定义

type slice struct {array unsafe.Pointerlen   intcap   int
}

这也就解释了如下情况。

func main() {var s1, s2 = []int{1, 2, 3}, []int{1, 2, 3}modify1(s1)fmt.Println(s1) // [588,2,3]modify2(s2)fmt.Println(s2) // [1,2,3]
}func modify1(a []int) {a[0] = 588 // 可以修改原来切片s的第一个值为588,即s={588,2,3},因为是通过指针修改的unsafe.Pointer
}func modify2(a []int) {a = a[:2] // 此时无法修改成功使s={2,3},因为a是s副本
}

常见误区

  1. “切片是引用传递”
    切片传递的是描述符的副本(包含指向底层数组的指针),因此对底层数组的修改会影响原切片。但如果是修改切片的长度或容量(如 append),则不会影响原切片,除非显式返回并覆盖。

  2. “映射和通道是引用类型”
    映射和通道的行为类似指针,但严格来说它们仍然是值传递。它们的底层数据结构在堆上分配,传递的是指向堆内存的指针的副本。

  3. 切片的指针传递*mySlice = otherSlice操作

func main() {mySlice := []int{1, 2, 3}modify1(&mySlice)fmt.Println(mySlice) // [1,2,3]modify2(&mySlice)fmt.Println(mySlice) // [87,34,99]}func modify1(mySlice *[]int) {otherSlice := []int{87, 34, 999}mySlice = &otherSlice // 将mySlice指针指向otherSlice的地址
}func modify2(mySlice *[]int) {otherSlice := []int{87, 34, 999}*mySlice = otherSlice // 修改mySlice指针指向的地址的切片数据为otherSlice
}

在这里插入图片描述

http://www.dtcms.com/wzjs/179315.html

相关文章:

  • 企业做营销型网站百度首页排名优化多少钱
  • 360购物网站怎么做的seo成都培训
  • 做网站武汉下载百度到桌面
  • 网站自己做推广百度关键词点击价格查询
  • 手机网站在线制作网络营销发展现状与趋势
  • 如何自己做的网站seo网站有优化培训吗
  • 用boots做网站营销培训机构哪家最专业
  • go 做视频网站医院网站建设方案
  • 二次开发wordpress关键词优化教程
  • 信阳网站建设找汉狮品牌运营方案
  • 做汽车租赁主要的网站中国重大新闻
  • 河北邢台宁晋县疫情最新情况湖南关键词优化首选
  • 牛网站seo实战培训课程
  • 网站建设 软件有哪些方面seo优化网站推广专员招聘
  • 07年做网站威海seo公司
  • 用手机能建网站吗推广的几种方式
  • 做商业地产的网站2023国内外重大新闻事件10条
  • 直流分公司四川建设部网站网站关键词百度自然排名优化
  • 网站怎样做注册窗口b站推广网站
  • 广州免费设计网站建设谷歌seo 优化
  • 个人网站可以做导购吗baidu百度
  • 企业h5网站建设河北seo公司
  • 网站开发语言查看天门网站建设
  • wordpress添加友链windows优化大师在哪里
  • 微博营销平台济源新站seo关键词排名推广
  • wordpress的sitemapseo助力网站转化率提升
  • 湖南交通建设监理协会网站百度识图网页入口
  • 如何做网站嵌入腾讯地图西安快速排名优化
  • 直播网站怎么做啊开个网站平台要多少钱
  • 在线建网址重庆二级站seo整站优化排名