所以我一直在努力学习一点Swift,而且我一直在寻找带有返回类型的函数。我添加了这个函数,它应该可以工作,但是我仍然得到错误"找不到成员' convertFromStringInterpolationSegment。'我已经查看了其他堆栈溢出问题,并试图应用他们的答案,但无济于事。一些帮助将不胜感激。
func getGasPrices2(price1: Double, price2:Double, price3:Double)
{
return "The prices are \(String(price1)), \(String(price2)), \(String(price3))."
}
getGasPrices2(3.59, 3.69, 3.79)
答案 0 :(得分:3)
您忘记申报退货类型。由于您要返回String,因此该函数需要声明:
func getGasPrices2(price1: Double, price2:Double, price3:Double) -> (String)
我确信Apple会处理这些精彩的错误消息。 :)
答案 1 :(得分:0)
正如Alvin所说,你只是错过了返回类型
-> (String)
...在函数声明中。
我发现自己做了同样的事情,最后忘记了返回类型,因为我仍然习惯于在Swift中编写,同时具有Objective-C习惯的函数类型声明 -
...
基本上你在Swift中的功能......
func getGasPrices2(price1: Double, price2:Double, price3:Double) -> (String)
......相当于*到
-(NSString*)getGasPrices2: (double)price1 price2:(double)price2 price3:(double)price3
...在Objective-C *
中* Swift中的字符串与NSStrings完全相同,但这两个函数都能够完成你想要做的事情;一个在Objective-C中,另一个在Swift中(只要你确保在结尾处实际返回一个String / NSString: - )