[解決済み] テスト
2022-02-23 13:32:55
質問
を設定すると
firstThing
をデフォルトにする
nil
のデフォルト値なしで、これは動作します。
nil
関数を呼び出すと、パラメータが足りないというエラーが出ます。
と入力すると
Int?
というデフォルト値でオプションにしたのでは?
nil
ということでしょうか?もしそうなら、なぜ
= nil
?
func test(firstThing: Int? = nil) {
if firstThing != nil {
print(firstThing!)
}
print("done")
}
test()
解決方法は?
オプショナルとデフォルトのパラメータは別物です。
オプショナルは、以下のような変数です。
nil
です。
デフォルトのパラメータでは
デフォルト
の値を省略した場合、このデフォルト値はこのように指定されます。
func test(param: Int = 0)
オプションであるパラメータを指定した場合、渡したい値が
nil
. もしあなたの関数が次のようなものであれば
func test(param: Int?)
のように呼び出すことはできません。
test()
. パラメータがオプションであっても、デフォルト値はありません。
また、この2つを組み合わせて、オプションの場所を取るパラメータを用意することもできます。
nil
はデフォルト値で、こんな感じです。
func test(param: Int? = nil)
.
関連
-
[解決済み] Swift言語におけるエクスクラメーションマークの意味とは?
-
[解決済み] メソッドと関数の違いは何ですか?
-
[解決済み] Swiftで#pragmaマーク?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] JavaScriptの関数をパラメータとして渡す
-
[解決済み] 関数のソースコードを見るにはどうしたらいいですか?
-
[解決済み] オプションの引数を持つPython関数を作成するにはどうしたらいいですか?
-
[解決済み】JavaScriptの関数にデフォルトのパラメータ値を設定する
-
[解決済み】関数の前のエクスクラメーションマークは何をするのですか?
-
[解決済み】Xcode 8 Beta 3 Legacy Swiftを使用する問題
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] テスト
-
[解決済み] swiftにおけるconvenience initとinitの違いは何ですか、より良い明示的な例
-
[解決済み] 純粋な」Swift で弱いプロトコル参照を作るには (@objc なしで) どうしたらいいですか?
-
[解決済み] プログラミング言語Swiftで文字列のn文字目を取得する
-
[解決済み】Swiftのオプション値とは何ですか?
-
[解決済み】解決方法。iOS 13.0で'keyWindow'が非推奨になりました。
-
[解決済み】dyld: ライブラリがロードされません。rpath/libswift_stdlib_core.dylib です。
-
[解決済み】Swiftで列挙型の値の名前を取得する方法は?
-
[解決済み】なぜ、Swiftの文字列では、?のような絵文字が奇妙に扱われるのですか?
-
[解決済み】UIViewControllerの最上位機種を取得する。