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

Flutter 2.5版本默认代码新增const修饰符能否删除?添加有什么区别?

问题解答

示例代码中的const是否可以删除?

可以删除,删除后代码不会出现逻辑错误,仍可正常编译运行。
需要注意的是,如果你开启了Flutter官方默认的flutter_lints校验规则,删除const后IDE会弹出「优先使用const常量」的提示警告,但不会阻断编译。

添加const修饰符的差异

const本质是Dart提供的编译期常量声明标识符,针对Flutter Widget场景的差异主要有三点:

  • 性能优化:const修饰的Widget会在编译阶段就完成初始化,全局只会生成唯一的实例,即便父组件触发重build,这个const修饰的子组件也不会重新创建实例,能减少不必要的对象销毁重建开销,在频繁重绘的UI场景下能明显提升页面流畅度。
  • 内存节省:同一个const修饰的对象不管被引用多少次,都只会占用一份内存空间,不会生成重复的实例,能降低应用整体内存占用。
  • 语法约束:被const修饰的构造方法要求所有入参都是编译期常量,能从语法层面避免属性被意外修改,减少潜在的BUG。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 04:36:02