函数中的飞镖函数

Dart function in a function

我的代码:

void main() {
  String name() {
    return "Uday Kiran";
  }

  void printF(var value) {
    print(value);
  }

  printF(name);
}

嘿,如果我的问题很愚蠢,我很抱歉。但我可能是编程新手,我坚持做这样的事情。我实际上想将 name 函数返回的字符串作为参数传递给我的 printF 函数,以便在我的控制台上打印字符串“Uday Kiran”。但是我得到的输出是这样的:

问题是您将 name 作为指向 Function 的变量引用,而不是调用它指向的函数。在 Dart 中,您使用 () 调用函数(在没有参数的情况下),因此您的示例应该改为:

void main() {
  String name() {
    return "Uday Kiran";
  }

  void printF(String value) {
    print(value);
  }

  printF(name());
}

我还更改了 argument 的类型,以指定您希望获得 String 作为问题中所述的参数。通过这样做,您还会收到一个错误,解释示例中 name 的问题。