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

wordpress wp_head函数东营优化公司

wordpress wp_head函数,东营优化公司,wordpress移动端菜单栏,如何做好一个网站Go语言初识–标识符 可见性 和C语言相似,go语言的基本组成有: 包声明,编写源文件时,必须在非注释的第一行指明这个文件属于哪个包,如package main。引入包,其实就是告诉Go 编译器这个程序需要使用的包&…

Go语言初识–标识符 可见性

和C语言相似,go语言的基本组成有:

  1. 包声明,编写源文件时,必须在非注释的第一行指明这个文件属于哪个包,如package main。
  2. 引入包,其实就是告诉Go 编译器这个程序需要使用的包,如import "fmt"其实就是引入了fmt包。
  3. 函数,和c语言相同,即是一个可以实现某一个功能的函数体,每一个可执行程序中必须拥有一个main函数。
  4. 变量,Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。
  5. 语句/表达式,在 Go 程序中,一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号 ; 结尾,因为这些工作都将由 Go 编译器自动完成。
  6. 注释,和c语言中的注释方式相同,可以在任何地方使用以 // 开头的单行注释。以 /* 开头,并以 */ 结尾来进行多行注释,且不可以嵌套使用,多行注释一般用于包的文档描述或注释成块的代码片段。

标识符

标识符(Identifier)是程序中用来命名实体(如变量、函数、类型、常量、结构体字段等)的名字。在 Go 语言中,标识符的命名遵循以下规则:

  1. 组成部分

    • 标识符由字母、数字和下划线 _ 组成。
    • 标识符的第一个字符必须是字母(a-zA-Z)或下划线 _,不能是数字。

    例如:

    var valid1 int    // 合法
    var 1invalid int  // 不合法,不能以数字开头
    var _validName int // 合法
    
  2. 大小写

    • 大写字母开头的标识符被认为是 导出 的(即在其他包中可见)。
    • 小写字母开头的标识符是 未导出 的,只能在当前包内访问。

Go 语言中的可见性规则(导出与未导出):

1. 导出标识符(Exported Identifier)

  • 大写字母开头的标识符可以被外部包访问,也就是说,这种标识符对外部包是 可见的
  • 这与其他语言中的 public 类似,例如 Java 或 C++ 中的公共成员。

示例

// 定义一个结构体和函数,结构体字段和函数名首字母大写,表示它们是导出的
package mypackage// 导出字段
type MyStruct struct {Name string
}// 导出函数
func MyFunction() {fmt.Println("This is a public function!")
}

在这个示例中,MyStruct 结构体和其字段 Name,以及 MyFunction 函数都可以被外部包使用:

package mainimport "mypackage"func main() {var s mypackage.MyStructs.Name = "Hello"  // 可以访问 Name 字段,因为它是导出的mypackage.MyFunction()  // 可以调用 MyFunction,因为它是导出的
}
  • MyStructMyFunction导出 的,因为它们的名字以大写字母开头,其他包可以直接访问它们。

2. 未导出标识符(Unexported Identifier)

  • 小写字母开头的标识符未导出 的,只能在定义它的包内访问,外部包无法直接访问。
  • 这类似于其他语言中的 privateprotected 成员。

示例

package mypackage// 未导出字段
type MyStruct struct {name string // 小写字母开头,表示未导出
}// 未导出函数
func myFunction() {fmt.Println("This is a private function!")
}

在这个示例中,MyStructname 字段和 myFunction 函数都是 未导出 的,它们只能在 mypackage 包内部使用,其他包无法访问:

package mainimport "mypackage"func main() {var s mypackage.MyStructs.name = "Hello"  // 错误:无法访问未导出的字段 'name'mypackage.myFunction()  // 错误:无法调用未导出的函数 'myFunction'
}
  • 由于 name 字段和 myFunction 函数都是小写字母开头,表示它们是 未导出 的,外部包无法访问。

总结:

  1. 标识符组成:Go 中的标识符由字母、数字和下划线组成,但首字符必须是字母或下划线。

  2. 导出和未导出

    • 大写字母开头的标识符(如 MyStructMyFunction)是 导出的,可以被外部包访问。

    • 小写字母开头的标识符(如 namemyFunction)是 未导出的,只能在当前包内访问。

    • 导出:类似于其他语言中的 public,表示对外部可见。

    • 未导出:类似于其他语言中的 private,表示对外部不可见。

为什么这个规则很重要?

  1. 封装性:Go 使用这种规则来实现封装,只暴露给外部包必要的功能,而隐藏包内部的实现细节。
  2. API 设计:通过将某些函数和类型字段标记为 导出未导出,你可以更清晰地设计包的公共接口,并防止外部包访问不该访问的内部实现。
http://www.dtcms.com/a/538364.html

相关文章:

  • 模型置信度在实际中的应用
  • 网站建设策划书格式及范文南昌网站建设品牌
  • 哪些网站设计好企业邮箱格式怎么注册
  • zhi做网站ps做网页设计的尺寸
  • 中国做的很好的食品网站logo设计素材图片
  • 网站设计设计目的深圳网站设计制
  • 用什么网站做一手楼好百度快照举报网站
  • 浏览器无法访问wordpress报503企业网站seo实
  • 游戏盾是如何保障游戏安全稳定的
  • 青州网站建设优化排名个人网站导航html源码
  • CSS技巧:使用 box-shadow + outline 实现多重边框与圆角阴影完美结合
  • iis6.0新发布网站访问速度慢网络推广渠道有哪些哪些
  • 上海网站建设v芯ee8888e有梦商城公司网站
  • 上线了做网站怎么查看百度上做推广怎么做
  • Freerun、SM、DC三种同步模式
  • 宁波网站建设地址在哪电子商务网站设计毕业设计论文
  • 南昌外包建站免费域名邮箱注册
  • 省级精品课程网站营销导向的企业网站优化
  • 广州住房和建设局网站最简单的做网站工具
  • 自己如何建设刷赞网站企业只有建立自己的网站
  • 服务器禁止ip访问网站网站定制建设哪里好
  • Cursor MCP Java程序员从零开始实战教程
  • 朝阳港网站建设方案浏览器的网站通知怎么做
  • 装修网站建设服务商云南旅游网站建设公司
  • 如何做购物网站的后台html模板 多列展示模板
  • 如何做网站详细步骤wordpress 开源
  • 北京市建设厅门户网站6网站域名备案代理
  • 做静态网站自己想建设一个网站
  • 国外有趣的网站黑龙江建设网一体化平台
  • 天津建设银行官网站微网站是用什么代码制作