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

网站后台登陆模板wordpress文章发布没有页面

网站后台登陆模板,wordpress文章发布没有页面,注册城乡规划师难考吗,收录优美图片app✍个人博客#xff1a;Pandaconda-CSDN博客 #x1f4e3;专栏地址#xff1a;http://t.csdnimg.cn/UWz06 #x1f4da;专栏简介#xff1a;在这个专栏中#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话#xff0c;欢迎点赞#x1f44d;收藏… ✍个人博客Pandaconda-CSDN博客 专栏地址http://t.csdnimg.cn/UWz06 专栏简介在这个专栏中我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话欢迎点赞收藏您的支持就是我创作的最大动力 46. Go  方法值接收者和指针接收者的区别? 在 Go 中方法可以定义在结构体类型上。接收者是指在方法定义中声明的函数参数。接收者可以是值接收者也可以是指针接收者。值接收者在方法调用时会对接收者进行复制而指针接收者则会使用指针来引用原始接收者。 使用值接收者时方法中对接收者所做的任何修改都不会影响原始接收者。而使用指针接收者时方法中对接收者所做的任何修改都将影响原始接收者。 另外指针接收者的优势在于它可以避免在每次调用方法时复制接收者从而提高程序的性能。此外在某些情况下只有使用指针接收者才能修改接收者的状态因为值接收者只能修改接收者的副本。 例如以下代码演示了一个使用值接收者和指针接收者的方法 type Counter struct {count int }// 值接收者方法 func (c Counter) increment() {c.count }// 指针接收者方法 func (c *Counter) decrement() {c.count-- }func main() {// 值接收者方法不会改变原始接收者的值c1 : Counter{count: 0}c1.increment()fmt.Println(c1.count) // 输出 0// 指针接收者方法会改变原始接收者的值c2 : Counter{count: 0}c2.decrement()fmt.Println(c2.count) // 输出 -1 } 在上面的示例中increment() 方法使用值接收者而 decrement() 方法使用指针接收者。在调用 increment() 方法后原始 Counter 结构体实例的 count 属性保持为零因为该方法对接收者的修改只影响了接收者的副本。而在调用 decrement() 方法后原始 Counter 结构体实例的 count 属性减少了一因为该方法直接修改了原始接收者。 47. Go 函数返回局部变量的指针是否安全? 一般来说局部变量在函数返回后被销毁因此被返回的引用就成为了 无所指 的引用程序会进入未知状态。 但这在 Go 中是安全的Go 编译器将会对每个局部变量进行逃逸分析。如果发现局部变量的作用域超出该函数则不会将内存分配在栈上而是分配在堆上因为他们不在栈区即使释放函数其内容也不会受影响。 package mainimport fmtfunc add(x, y int) *int {res : 0res x yreturn res }func main() {fmt.Println(add(1, 2)) } 这个例子中函数 add 局部变量 res 发生了逃逸。res 作为返回值在 main 函数中继续使用因此 res 指向的内存不能够分配在栈上随着函数结束而回收只能分配在堆上。 编译时可以借助选项 -gcflags-m查看变量逃逸的情况。 ./main.go:6:2: res escapes to heap: ./main.go:6:2: flow: ~r2 res: ./main.go:6:2: from res (address-of) at ./main.go:8:9 ./main.go:6:2: from return res (return) at ./main.go:8:2 ./main.go:6:2: moved to heap: res ./main.go:12:13: ... argument does not escape 0xc0000ae008 res escapes to heap 即表示 res 逃逸到堆上了。 48. def er 的执行顺序是什么 defer的作用和特点是什么 在 Go 语言中defer 是一种延迟执行机制用于在函数退出前执行一些特定的代码无论是函数正常返回还是发生异常。defer 语句是在函数调用结束后执行的即使出现错误或 panic 也会执行。defer 可以用于清理资源、处理错误等场景。 defer 语句的执行顺序是 “后进先出” 的也就是说最后一个被 defer 的语句会最先执行直到第一个被 defer 的语句执行完毕为止。 例如下面的代码中defer 语句的执行顺序是 3、2、1。 func example() {defer fmt.Println(1)defer fmt.Println(2)defer fmt.Println(3)fmt.Println(done) } 需要注意的是defer 延迟执行的代码并不是在函数退出前立即执行而是在函数执行结束后当函数返回时才会执行。因此如果在 defer 语句中使用的变量在函数返回前发生了改变那么最终执行的代码将使用最终值。 49. Go  defer 关键字的实现原理 定义 defer 能够让我们推迟执行某些函数调用推迟到当前函数返回前才实际执行。defer 与 panic 和 recover 结合形成了 Go 语言风格的异常与捕获机制。 使用场景 defer 语句经常被用于处理成对的操作如文件句柄关闭、连接关闭、释放锁。 优点 方便开发者使用。 缺点 有性能损耗。 实现原理 Go1.14 中编译器会将 defer 函数直接插入到函数的尾部无需链表和栈上参数拷贝性能大幅提升。把 defer 函数在当前函数内展开并直接调用这种方式被称为 open coded defer。 源代码 func A(i int) {defer A1(i, 2*i)if(i 1) {defer A2(Hello, eggo)}// code to do somethingreturn } func A1(a,b int) {//...... } func A2(m,n string) {//...... } 编译后伪代码 func A(i int) {// code to do somethingif(i 1){A2(Hello, eggo)}A1(i, 2*i)return } 代码示例 函数退出前按照先进后出的顺序执行 defer 函数 package mainimport fmt// defer延迟函数执行先进后出 func main() {defer fmt.Println(defer1)defer fmt.Println(defer2)defer fmt.Println(defer3)defer fmt.Println(defer4)fmt.Println(11111) }// 11111 // defer4 // defer3 // defer2 // defer1 panic 后的 defer 函数不会被执行遇到 panic如果没有捕获错误函数会立刻终止 package mainimport fmt// panic后的defer函数不会被执行 func main() {defer fmt.Println(panic before)panic(发生panic)defer func() {fmt.Println(panic after)}() }// panic before // panic: 发生panic panic 没有被 recover 时抛出的 panic 到当前 goroutine 最上层函数时最上层程序直接异常终止。 package mainimport fmtfunc F() {defer func() {fmt.Println(b)}()panic(a) }// 子函数抛出的panic没有recover时上层函数时程序直接异常终止 func main() {defer func() {fmt.Println(c)}()F()fmt.Println(继续执行) }// b // c // panic: a panic 有被 recover 时当前 goroutine 最上层函数正常执行。  package mainimport fmtfunc F() {defer func() {if err : recover(); err ! nil {fmt.Println(捕获异常:, err)}fmt.Println(b)}()panic(a) }func main() {defer func() {fmt.Println(c)}()F()fmt.Println(继续执行) }// 捕获异常: a // b // 继续执行 // c
http://www.w-s-a.com/news/399177/

相关文章:

  • 想做一个自己设计公司的网站怎么做的销售培训
  • 南昌网站建设模板合作凡客app哪去了
  • 有免费做网站的吗建设互联网站
  • 北京市保障房建设投资中心网站淄博哪个网站做房屋出赁好
  • 如何做网站的优化网站开发怎么收费
  • 网站的关键词怎么选择2345实用查询
  • 免费的制作网站做图剪片文案网站app接单
  • 中国有多少网站有多少域名上海网站建设网页制作邢台
  • 网站 数据报表如何做室内设计联盟官方网站入口
  • 怎样建设网站论文合肥做网站的软件公司
  • 收款后自动发货的网站是怎么做的怎么看网站后台网页尺寸
  • 谷歌seo引擎优化宁波seo关键词
  • 外贸网站建设需要注意什么seo课程
  • 做信息图网站网站建设的软件介绍
  • 网站开发语言数据库有几种魏县审批建设的网站
  • 北京公司网站建设推荐海口建设
  • 不懂编程如何做网站婚礼网站模板
  • 像京东一样的网站wordpress入门视频教程7 - 如何在文章里加入视频和音乐
  • 惠州网站建设排名wordpress3万篇文章优化
  • 创建网站的三种方法北京建王园林工程有限公司
  • jsp网站建设模板下载十大免费excel网站
  • 网络公司网站图片网站建立好了自己怎么做优化
  • 云主机是不是可以搭建无数个网站百度快速seo优化
  • 房地产怎么做网站推广建立音乐网站
  • 川畅科技联系 网站设计网站开发的教学视频
  • 为什么学网站开发凡科登陆
  • 设计师常备设计网站大全中山精品网站建设信息
  • 杭州建设工程网seo服务是什么
  • 兼职做问卷调查的网站wordpress mysql设置
  • 怎么在百度上能搜到自己的网站山西seo谷歌关键词优化工具