小编Squ*_*rel的帖子

空的 const 构造函数重要吗?

这是一个后续问题

到目前为止,根据我所读到的关于constDart 构造函数的内容,它确保只分配相关类的一个对象。理论上,这可以节省分配空间和执行时间。甚至建议在遵循有效的 Dart设计时尽可能应用它。

现在,假设我们有一个无状态小部件Foo

import 'package:flutter/material.dart';

class Foo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Text("Hello world");
  }
}
Run Code Online (Sandbox Code Playgroud)

如果没有定义显式const构造函数,则无法在上下文中使用此小部件const。换句话说,下面的代码片段

import 'package:flutter/material.dart';

class Bar extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Foo();
  }
}
Run Code Online (Sandbox Code Playgroud)

是非法的。但是,如果在可预见的将来它没有(并且不会有)任何字段,那么const Foo();向该类添加 a 是否还有好处呢?Foo

dart

6
推荐指数
1
解决办法
573
查看次数

标签 统计

dart ×1