【问题标题】:Functions as return value in PascalPascal中作为返回值的函数
【发布时间】:2014-03-26 08:40:06
【问题描述】:

我想在 Pascal 中返回一个函数作为返回值。

一般情况下应该是这样的:

function a(function b: Integer): function : Integer;
begin
   a := b;
end;

但这不起作用。我知道返回函数存在一些问题 另一个函数的返回值,但据我所知,这段代码应该可以工作

我错过了什么?

【问题讨论】:

    标签: function return-value pascal freepascal


    【解决方案1】:

    你需要定义一个函数类型来做你想做的事。请看以下代码示例:

    type
      TFunc = function: Integer;
    
    function a(b: TFunc): TFunc;
    begin
      a := b;
    end;
    
    function x: Integer;
    begin
      x := 11;
    end;
    
    begin
      Writeln(a(@x));
    end.
    

    【讨论】:

    • 谢谢!帮了大忙!
    猜你喜欢
    • 2019-01-05
    • 1970-01-01
    • 1970-01-01
    • 2012-03-27
    • 2015-11-24
    • 1970-01-01
    • 2011-08-30
    • 1970-01-01
    • 2021-10-02
    相关资源
    最近更新 更多