当前位置: 首页 > 面试题库 >

GoLang中的二传手

曹均
2023-03-14
问题内容

对不起这个基本问题。我是GoLang的新手。

我有一个名为的自定义类型ProtectedCustomType,我不希望其中的变量set直接由调用者使用,而是希望使用Getter/
Setter方法来实现

下面是我的 ProtectedCustomType

package custom

type ProtectedCustomType struct {
    name string
    age int
    phoneNumber int
}

func SetAge (pct *ProtectedCustomType, age int)  {
    pct.age=age
}

这是我的main功能

import (
    "fmt"
    "./custom"
)
var print =fmt.Println

func structCheck2() {
    pct := ProtectedCustomType{}
    custom.SetAge(pct,23)

    print (pct.Name)
}

func main() {
    //structCheck()
    structCheck2()
}

但是我无法继续进行..您能帮我实现GoLang中的吸气剂概念吗?


问题答案:

如果要使用setter,则应使用方法声明:

func(pct *ProtectedCustomType) SetAge (age int)  {
    pct.age = age
}

然后您将可以使用:

pct.SetAge(23)

这种声明使您可以通过使用以下命令在结构上执行功能

(pct *ProtectedCustomType)

您正在传递指向结构的指针,因此对其进行的操作会更改其内部表示形式。

您可以在此链接或官方文档中了解有关此功能的更多信息。



 类似资料:
  • 大概是凉凉了 手撕算法:加油站问题 用的暴力法,没有想到别的解法

  • 问题内容: 客户端向从服务器发送文件的大小可能大于5G,而不是从服务器发送到主服务器的大小。 从站将临时文件保存到自己吗?我不希望发生这种情况,因为这会降低上载速度并浪费从站的内存。 有什么办法可以避免这种情况?在golang中传输大文件的最佳方法是什么? 问题答案: 是的,有以避免存储-转发方式的标准方式:只要客户端连接从服务器后应该打开到主服务器的连接,然后就 流 从客户那里的数据。通常,这是

  • 我的问题是,我不知道使用什么代码从我的getX方法到我的其他类主方法来获取我的值。 公共级刽子手{ } 这是来自子类的,我试图将triesLimit的值存储到这个类的main方法包hangman的main中; 我试着在这里查找,但找不到子/超类中使用的setter和getter

  • 1.自我介绍 2.mysql方面 正常八股(懒得写了) 3.redis方面 正常八股(懒得写了) 4.寻找数组只出现一次的元素 #滴滴实习##滴滴面经#

  • 我的主键是一个名为“ID”的字段 我在表中的字段“group_number”上添加了一个辅助索引 我通过二级索引进行查询,如下所示: 然而;我得到错误“ValidationException:query condition missed key schema Element:ID” DynamoDB只允许查询主键吗?我的印象是您使用“getitem”作为主键,因为如果您使用一个主键,只有一个记录可

  • 本文向大家介绍Golang数组的传递详解,包括了Golang数组的传递详解的使用技巧和注意事项,需要的朋友参考一下 概念介绍 数组与切片 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列。数组长度最大为2Gb,它是值类型。切片是对数组一个连续片段的引用,所以切片是一个引用类型。 按值传递和按引用传递 Go语言中函数的参数有两种传递方式,按值传递和按引用传递。Go默认使用按值传递来传递参数,