我可以以某种方式在结构中包含公式吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我可以以某种方式在结构中包含公式吗?相关的知识,希望对你有一定的参考价值。

我正在尝试创建一个结构,该结构使用公式在输入其他两个值时自动在结构字段之一中创建数据。

例如,我要使用输入的值LengthWidth创建2D矩形房间。然后,我想在结构中包括公式Area = Length * Width

已经尝试过,并且只收到语法错误:

语法错误:意外=,期望使用分号或换行符或}

// CURRENT CODE
type room struct {
 L int
 W int
 A int
}
// WOULD LIKE IT TO BE
type room struct {
 L int
 W int
 A int = room.L*room.H
}
答案

因为A是不变的,所以这将非常适合函数而不是字段。

type room struct {
    L int
    W int
}

func (r *room) area() int {
    return r.L * r.W
}
另一答案

如果您希望将A保留为字段,则可以选择在构造函数中执行计算。

type room struct {
 L int
 W int
 A int
}

func newRoom(length, width, int) room {
  return room{
    L: length,
    W: width,
    A: length * width,
  }
}

以上是关于我可以以某种方式在结构中包含公式吗?的主要内容,如果未能解决你的问题,请参考以下文章

在代码片段中包含类型转换

在片段中以编程方式在视图中包含布局

dplyr:如何以编程方式完整连接列表列表中包含的数据帧?

在 FCM(Firebase 云消息传递)中,在通知中包含令牌是不是安全?

如何在Angular Material Date Picker中包含前导零?

c 语言结构体中包含结构体 是数组吗