从dart新闻网站:
“
const”的含义在Dart中更加复杂和微妙。const修改 值 。您可以在创建收藏夹(如const [1, 2,3])和构造对象(而不是new)(如)时使用它const Point(2,3)。在这里,const意味着可以在编译时完全确定对象的整个深度状态,并且对象将被冻结并且完全不可变。
在这里阅读更多。
用我的话说,您可以使用诸如或的
const构造函数(定义为的构造函数
const)。
const Text()``new Text()
如果您使用
const Text():这将仅分配一个内存空间,而当您添加另一个
const Text()时,它将重复使用同一对象,但是
newText()将始终分配新的内存空间。因此,使用
const它可以提高程序性能(不是那么多的性能,而是更少的内存分配)。另外,
const如果需要重用,则可以将类构造函数定义为。
我注意到,如果将其删除,它仍然可以按预期工作。
那是因为在创建对象/实例时使用Dart 2
new和
const关键字optional是可以由Dart VM处理的。最初存在一些问题,但现在已解决。
即使您避免了
const/
new这些也会被Dart VM添加。将这两个关键字设置为可选的原因是在Flutter中,您必须在各处键入这两个关键字(例如,在小部件树中)。
飞镖第二次增强()2月23日



