You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gleam 1.0.0中struct定义编译报错,求解决方案

Gleam 1.0.0 结构体定义语法报错的解决方案

你的问题是因为Gleam 1.0.0已经废弃了旧的struct关键字语法,现在需要使用**带字段的自定义类型(record)**语法来定义结构体。

修正后的代码

// src/first.gleam

pub type Cat {
  Cat(name: String, is_cute: Bool)
}

pub fn main() {
  Cat(name: "Nubi", is_cute: True)
}

关键修改点

  • 把原代码中的pub struct Cat { ... }替换为pub type Cat { Cat(name: String, is_cute: Bool) }:这是Gleam 1.0+版本定义带命名字段的自定义类型的标准写法,本质是构造器与类型同名的代数数据类型。
  • 实例化结构体的代码Cat(name: "Nubi", is_cute: True)可以保持不变,Gleam依然支持关键字参数的写法。

修改完成后,重新运行gleam run即可正常编译执行。

内容的提问来源于stack exchange,提问作者oughy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 23:02:33