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

青岛网站优化网页制作培训多钱

青岛网站优化,网页制作培训多钱,办公软件,建设信用卡中心网站Go中new和make的区别 变量声明 当我们声明变量时可以使用var关键字#xff0c;当不指定变量的默认值时#xff0c;这些变量的默认值就是他们的零值#xff0c;比如int的默认值为0#xff0c;string的默认值为#xff0c;引用类型的零值为nil。 但是当我们在…Go中new和make的区别 变量声明 当我们声明变量时可以使用var关键字当不指定变量的默认值时这些变量的默认值就是他们的零值比如int的默认值为0string的默认值为引用类型的零值为nil。 但是当我们在声明引用类型的变量并直接使用时会panic。 package mainimport fmtfunc main() {var i *int*i 10fmt.Println(*i) }//output: panic: runtime error: invalid memory address or nil pointer dereference所以对于引用型变量时除了要声明它以外还要为其分配空间。要分配内存就需要使用make或者new。 new 上面的问题使用new我们可以这样解决 package mainimport fmtfunc main() {var i *inti new(int)*i 10fmt.Println(*i) } //output: 10对于new这个内置函数 // The new built-in function allocates memory. The first argument is a type, // not a value, and the value returned is a pointer to a newly // allocated zero value of that type. func new(Type) *Type它只接受一个类型参数内存分配完毕之后会返回一个指向该内存的同类型的指针同时将该内存的值改为该类型的零值。 再看一个例子 package mainimport (fmtsync )type user struct {lock sync.Mutexname stringage int }func main() {u : new(user)u.lock.Lock()u.name demou.lock.Unlock()fmt.Println(u) }在这个例子中可以看到使用new的好处在user中lock不需要自行的去初始化new之后可以直接使用。 make make也是用于内存分配但是和new不同的是它只用于chan、map以及切片的内存创建而且它返回的类型就是这三个类型本身而不是它们的指针类型因为这三种类型就是引用类型所以没有必要返回它们的指针。 func make(t Type, size ...IntegerType) Type异同 二者都是在堆上进行内存分配但make只用于slice、map、channel的初始化make返回的还是这三个引用类型本身而new返回的是指向类型的指针 为什么既有make又有new? rujews使用make的好处是可以指定len和capmake(type,len,cap)合适的len和cap可以提升性能。 YahuiAn在使用make()函数创建切片时如果我们能够预计出合理的容量大小太大浪费内存空间太小会不断的扩容哪么我们在进行切片的append时可能不会发生扩容也就避免了切片元素的复制减少了开销。
http://www.huolong8.cn/news/153079/

相关文章:

  • 网站用图怎么做文件小质量高生态建设网站
  • 免费的求职简历模板网站软件优化网站
  • 上海市城乡建设管理局网站佛山房地产网站建设
  • 西昌网站开发公司wordpress主题库
  • 建信建设投资有限公司网站wordpress wp_get_post_tags
  • 品牌网网站建设用软件建网站
  • 方城网站制作网站建设公司好发信息网
  • 合肥专业做网站公司北京网站建设定制型报价
  • 企业网站建设比较调查怎么写上什么网站做会计教育
  • 网站开发方式有哪些网上全网推广
  • 宿迁网站建设报价jsp做的网站可以用的
  • 遵义网站设计制作网站建设网站的原则
  • 网站认证免费wordpress外贸网站好用的模板
  • 哈尔滨网站域名部门seo怎么做自己的网站
  • 网站的目的和意义wordpress 百度翻译插件
  • 网站建设单词个人注册一个小公司要多少钱
  • 算命网站建设网页设计制作论文
  • 中国交通建设监理协会网站打不开微信小程序网站建设定制
  • 做网站怎么加入索引功能怎样做公司网站建设
  • wordpress导航网站wordpress点击网页效果
  • 做去自己的网站nft制作网站
  • 做网站需要什么特色怎么推广自己的微信号
  • 做十个网站买一个app需要多少钱
  • 网站建设实验报告格式郴州市建设网站
  • 资讯类网站建设资质要求网站注册费
  • 网站建设到维护征信报告
  • 网站推广排名教程商城网站建设模板
  • 国家高新技术企业补贴多少钱网站常用的优化方法
  • 网站后台账号张家港网站开发
  • 网站开发有哪些公司建站外贸网站建设