E-Ink 新闻日报

返回列表

FAQ:为什么可变类型不是不可变类型的子类型,反之亦然?

本文解释了为什么可变与不可变的数据结构变体不能作为彼此的子类型或超类型,依据是Liskov替换原则。文章以不可变/可变配对结构为例,说明可变配对引入了破坏不可变行为契约的新操作(如set-car!/set-cdr!)。

背景

本文讨论了编程语言设计论坛中关于可变与不可变数据结构之间类型层次关系的常见疑问。

来源
Lobsters
发布时间
2026年9月18日 23:30
评分
6.0 / 10