1

だから私は少し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)
4

2 に答える 2

0

アルビンが述べたように、単に戻り値の型がありませんでした

-> (String)

...関数の宣言で。

Objective-C の関数型宣言ファーストの習慣を持ちながら、Swift で書くことにまだ慣れているので、最後に戻り値の型を忘れて、同じことをしていることに気づきました。

...

基本的にSwiftでの機能...

func getGasPrices2(price1: Double, price2:Double, price3:Double) -> (String)

...と同等*

-(NSString*)getGasPrices2: (double)price1 price2:(double)price2 price3:(double)price3

...Objective-C* で

* Swift の文字列は NSString とまったく同じではありませんが、両方の関数で目的を達成できます。1 つは Objective-C で、もう 1 つは Swift で (最後に String/NSString を実際に返すことを確認する限り:-)

于 2014-06-15T20:46:45.147 に答える