企业网站托管排版设计制作windows优化大师是什么
企业网站托管排版设计制作,windows优化大师是什么,北京app软件开发公司,无法更新网站主页 dedecmsGo 语言中数组可以存储同一类型的数据#xff0c;但在结构体中我们可以为不同项定义不同的数据类型。
结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。
结构体表示一项记录#xff0c;比如保存图书馆的书籍记录#xff0c;每本书有以下属性#xff1a;
Titl…Go 语言中数组可以存储同一类型的数据但在结构体中我们可以为不同项定义不同的数据类型。结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。结构体表示一项记录比如保存图书馆的书籍记录每本书有以下属性Title 标题Author 作者Subject学科ID书籍ID定义结构体结构体定义需要使用 type 和 struct 语句。struct 语句定义一个新的数据类型结构体中有一个或多个成员。type 语句设定了结构体的名称。结构体的格式如下type struct_variable_type struct { member definition member definition ... member definition }一旦定义了结构体类型它就能用于变量的声明语法格式如下variable_name : structure_variable_type {value1, value2...valuen} 或 variable_name : structure_variable_type { key1: value1, key2: value2..., keyn: valuen}实例如下实例package mainimport “fmt”type Books struct {title stringauthor stringsubject stringbook_id int}func main () {// 创建一个新的结构体fmt.Println (Books { “Go 语言”,“www.runoob.com”,“Go 语言教程”,6495407 })// 也可以使用 key value 格式fmt.Println (Books { title:“Go 语言”, author:“www.runoob.com”, subject:“Go 语言教程”, book_id:6495407 })// 忽略的字段为 0 或 空fmt.Println (Books { title:“Go 语言”, author:“www.runoob.com” })}输出结果为{Go 语言 www.runoob.com Go 语言教程 6495407} {Go 语言 www.runoob.com Go 语言教程 6495407} {Go 语言 www.runoob.com 0}访问结构体成员如果要访问结构体成员需要使用点号 . 操作符格式为结构体.成员名结构体类型变量使用 struct 关键字定义实例如下实例package mainimport “fmt”type Books struct {title stringauthor stringsubject stringbook_id int}func main () {var Book1 Books /* 声明 Book1 为 Books 类型 */var Book2 Books /* 声明 Book2 为 Books 类型 *//* book 1 描述 */Book1.title “Go 语言”Book1.author “www.runoob.com”Book1.subject “Go 语言教程”Book1.book_id 6495407/* book 2 描述 */Book2.title “Python 教程”Book2.author “www.runoob.com”Book2.subject “Python 语言教程”Book2.book_id 6495700/* 打印 Book1 信息 */fmt.Printf (Book 1 title: %s \n , Book1.title)fmt.Printf (Book 1 author: %s \n , Book1.author)fmt.Printf (Book 1 subject: %s \n , Book1.subject)fmt.Printf (Book 1 book_id: %d \n , Book1.book_id)/* 打印 Book2 信息 */fmt.Printf (Book 2 title: %s \n , Book2.title)fmt.Printf (Book 2 author: %s \n , Book2.author)fmt.Printf (Book 2 subject: %s \n , Book2.subject)fmt.Printf (Book 2 book_id: %d \n , Book2.book_id)}以上实例执行运行结果为Book 1 title : Go 语言 Book 1 author : www.runoob.com Book 1 subject : Go 语言教程 Book 1 book_id : 6495407 Book 2 title : Python 教程 Book 2 author : www.runoob.com Book 2 subject : Python 语言教程 Book 2 book_id : 6495700结构体作为函数参数你可以像其他数据类型一样将结构体类型作为参数传递给函数。并以以上实例的方式访问结构体变量实例package mainimport “fmt”type Books struct {title stringauthor stringsubject stringbook_id int}func main () {var Book1 Books /* 声明 Book1 为 Books 类型 */var Book2 Books /* 声明 Book2 为 Books 类型 *//* book 1 描述 */Book1.title “Go 语言”Book1.author “www.runoob.com”Book1.subject “Go 语言教程”Book1.book_id 6495407/* book 2 描述 */Book2.title “Python 教程”Book2.author “www.runoob.com”Book2.subject “Python 语言教程”Book2.book_id 6495700/* 打印 Book1 信息 */printBook (Book1)/* 打印 Book2 信息 */printBook (Book2)}func printBook ( book Books ) {fmt.Printf (Book title: %s \n , book.title)fmt.Printf (Book author: %s \n , book.author)fmt.Printf (Book subject: %s \n , book.subject)fmt.Printf (Book book_id: %d \n , book.book_id)}以上实例执行运行结果为Book title : Go 语言 Book author : www.runoob.com Book subject : Go 语言教程 Book book_id : 6495407 Book title : Python 教程 Book author : www.runoob.com Book subject : Python 语言教程 Book book_id : 6495700结构体指针你可以定义指向结构体的指针类似于其他指针变量格式如下var struct_pointer *Books以上定义的指针变量可以存储结构体变量的地址。查看结构体变量地址可以将 符号放置于结构体变量前struct_pointer Book1使用结构体指针访问结构体成员使用 “.” 操作符struct_pointer.title接下来让我们使用结构体指针重写以上实例代码如下实例package mainimport “fmt”type Books struct {title stringauthor stringsubject stringbook_id int}func main () {var Book1 Books /* 声明 Book1 为 Books 类型 */var Book2 Books /* 声明 Book2 为 Books 类型 *//* book 1 描述 */Book1.title “Go 语言”Book1.author “www.runoob.com”Book1.subject “Go 语言教程”Book1.book_id 6495407/* book 2 描述 */Book2.title “Python 教程”Book2.author “www.runoob.com”Book2.subject “Python 语言教程”Book2.book_id 6495700/* 打印 Book1 信息 */printBook (Book1)/* 打印 Book2 信息 */printBook (Book2)}func printBook ( book * Books ) {fmt.Printf (Book title: %s \n , book.title)fmt.Printf (Book author: %s \n , book.author)fmt.Printf (Book subject: %s \n , book.subject)fmt.Printf (Book book_id: %d \n , book.book_id)}以上实例执行运行结果为Book title : Go 语言 Book author : www.runoob.com Book subject : Go 语言教程 Book book_id : 6495407 Book title : Python 教程 Book author : www.runoob.com Book subject : Python 语言教程 Book book_id : 6495700