Swift 如何在具有相同名称的方法/属性变量内调用全局函数?

Swift 如何在具有相同名称的方法/属性变量内调用全局函数?,swift,function,methods,call,naming,Swift,Function,Methods,Call,Naming,例如,我的类中有一个名为ceil的属性。在函数内部,我想调用全局函数ceil。我该怎么做 class Example : BaseClass { var ceil : Double { return ceil(self); } // Error: Cannot call value of non-function type 'Double'; func round : Double { return round(self); } // Infinite recursive

例如,我的类中有一个名为
ceil
的属性。在函数内部,我想调用全局函数
ceil
。我该怎么做

class Example : BaseClass {
    var ceil : Double { return ceil(self); } // Error: Cannot call value of non-function type 'Double';
    func round : Double { return round(self); } // Infinite recursive
    var flooring : Double { return floor(self); } // Success
}

但如果我不想使用
天花板
。我想使用
ceil
。在这种情况下我怎么做?可能吗?我在想,如果可能的话,我是否可以调用全局函数,比如
Math.ceil(self)

您可以使用
var-ceil:Double{return Darwin.ceil(self)}

您应该为您的用例使用扩展,而无需创建新类。这样,您就可以在
Double
上随时使用这些方法,而无需实例化新类

extension Double {
  var ceil : Double { return Darwin.ceil(self) }
  var floor : Double { return Darwin.floor(self) } // Success
}

您可以使用
var-ceil:Double{return Darwin.ceil(self)}

您应该为您的用例使用扩展,而无需创建新类。这样,您就可以在
Double
上随时使用这些方法,而无需实例化新类

extension Double {
  var ceil : Double { return Darwin.ceil(self) }
  var floor : Double { return Darwin.floor(self) } // Success
}

您可以使用
var-ceil:Double{return Demo.ceil(self);}


这里
Demo
是项目名称。

您可以使用
var-ceil:Double{return Demo.ceil(self);}


这里的
Demo
是项目名称。

该类继承了
Double
,这似乎是非法的!您应该得到“继承自非协议,非类类型‘Double’”@AhmadF抱歉,这是一个输入错误。该类继承了
Double
,这似乎是非法的!你应该得到“继承自非协议,非类类型‘Double’”@AhmadF抱歉,这是一个输入错误。是的,我实际上扩展了Double。这个例子只是一个概括。谢谢是的,我实际上延长了两倍。这个例子只是一个概括。谢谢令人惊叹的从未想过使用我自己的项目名称来调用全局函数。谢谢令人惊叹的从未想过使用我自己的项目名称来调用全局函数。谢谢