gpt4 book ai didi

dart - 为什么用@required注释变量时需要默认值?

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

void main() {
foo(bar: 1);
}

void foo({@required int bar}) {} // Error
错误:

The parameter 'bar' can't have a value of 'null' because of its type, and no non-null default value is provided.


我用 bar注释 @required,它也是不可为空的。这意味着我将始终需要为 bar提供一个非空值。那么,为什么编译器要求我提供默认值?

最佳答案

@required是来自meta包的旧注释标记,是作为从分析器发出警告的一种方式引入的。使用NNBD,已将其更改为名为required的关键字。您可以在以下链接中了解有关此关键字的更多信息:
https://dart.dev/null-safety/understanding-null-safety#required-named-parameters

关于dart - 为什么用@required注释变量时需要默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63439242/

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