gpt4 book ai didi

dart - 对于类构造函数和函数参数中的命名参数的默认值, “:”和 “=”有什么区别

转载 作者:行者123 更新时间:2023-12-03 04:47:03 28 4
gpt4 key购买 nike

考虑一个动物类,它具有两个字段-totalLegstype

class Animal {
final int totalLegs;
final String type;
}

假设 totalLegs默认为4,而 type默认为“cat”。我们可以通过两种不同的方式为字段设置默认值:
  • 使用“=”

  • class Animal {
    ...

    Animal({this.totalLegs = 4, this.type = 'cat'});
    }
  • 使用“:”

  • class Animal {
    ...

    Animal({this.totalLegs: 4, this.type: 'cat'});
    }

    两种方式的行为是否相同?有什么不同?或者,如果没有区别,为什么不只有一种设置默认值的方法呢?

    最佳答案

    它们是相同的,但是不推荐使用:。它被替换为=。我认为,出于某些向后兼容性的原因,未删除已弃用的版本。但是现在建议使用=代替:,并且不能保证它的 future 。它可能会在Dart的 future 版本中删除,否则不会删除。

    关于dart - 对于类构造函数和函数参数中的命名参数的默认值, “:”和 “=”有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62103840/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com