假设这样的条件:
- 某些操作不提供返回结果的可能性。
- 此操作声明为回调
- 不推荐使用 typedef
- 一些操作提供返回结果。
- 此操作声明为回调
- 不推荐使用 typedef
假设这样的场景:
void main() {
executeVoidOperation(methodNonVoid); // Must throw if method void?
executeNonVoidOperation(methodVoid); // Must throw if method non-void?
}
int methodNonVoid() {
return 0;
}
void methodVoid() {
}
void executeVoidOperation(void operation()) {
operation(); // Must throw if method non-void?
}
void executeNonVoidOperation(dynamic operation()) {
var result = operation(); // Must throw if method void?
print(result); // Result of void operation? (if such passed as argument)
}
显示结果:
null
问题(我错在哪里?):
Null
是对象。如果函数无法返回结果(甚至) ,从哪里null
出现()?as result
void
null
- Dart 中具有不同返回类型的函数假定为相同(不冲突)类型?
- Dart 中如何将此函数称为转换?