在宣布Function member in a class分的同时,我们可以同时做到这两点;

Function first;
Function() second;

它们之间有什么不同?

推荐答案

  • Function代表任何功能:
void function() {}
int anotherFunction(int positional, {String named}) {}


Function example = function; // works
example = anotherFunction; // works too
  • Function()表示没有参数的函数:
void function() {}
int anotherFunction(int positional, {String named}) {}


Function() example = function; // works
example = anotherFunction; // doesn't compile. anotherFunction has parameters

Function()的变体可能是:

void Function() example;

同样,我们可以为函数指定参数:

void function() {}
int anotherFunction(int positional, {String named}) {}

int Function(int, {String named}) example;

example = function; // Doesn't work, function doesn't match the type defined
example = anotherFunction; // works

Dart相关问答推荐

为什么使用三元条件运算符会产生return_of_invalid_type错误?

AngularDart 可以直接路由到组件吗?

Flutter:[cloud_firestore/unknown] NoSuchMethodError:null 上的无效成员:'includeMetadataChanges'(Flutter Web)

在 Dart 中将对象推入数组

如何在Flutter中正确显示Snackbar?

Flutter:测试期间的计时器问题

Flutter列表视图底部溢出

是否有必要为Flatter安装Android Studio,或者可以用什么替代Android Studio?

在 Flutter 的 TextFormField 中管理事件

为什么 Dart 有编译时常量?

dart的Completer和Future?

将函数/方法分配给 Dart 中的变量

Dart 是否支持参数化单元测试?

Dart:如何判断变量类型是否为字符串

如何在 Dart 中获取字符串的字节数?

具有列表的 Null 感知运算符

方法级联如何在 dart 中准确工作?

Dart 如何匹配然后替换正则表达式

如何以 Dart 语言将变量完全转储/打印到控制台?

如何在 Dart 中获取时间戳?