2016-12-14 7 views
0

スウィフトは、エラーが表示されます。は、引数なしのタイプ「URL」の初期化子を呼び出すことはできません - 3

Cannot invoke initializer for type 'URL' with no arguments

は、次のコードである -

var databasePath = URL() 

私は世界的にこの変数を宣言しています。また、2つのエラー上方受信

var databasePath: URL! 
if let url = NSURL().absoluteURL { //error 1- Consecutive declarations on a line must be separated by ';' 
databasePath = url //error2 - Variable used within its own initial value 
} 

ためにしようとした場合のvar DatabasePathに= URLの代替としてコード上記ライト()。

私はSwiftで初心者です。私に解決策を教えてください。

+0

URLは不変オブジェクトです。あなたはsthのようにする必要があります: 'URL(fileURLWithPath:"/tmp/db ")' – ozgur

答えて

1

URL初期化子には引数が必要です。

基本的に2つのタイプがあります。

  • ファイルシステム内のURL

    let databaseURL = URL(fileURLWithPath:"/path/to/file.ext") 
    
  • URLの明示的なスキーム(例えばhttpftpなど)とは

    let databaseURL = URL(string:"http://myserver/path/to/file.ext")! 
    

    URLが有効であることが保証されている場合は、ラップ解除することができます(!)それ以外の場合は光学バインディング(if let

関連する問題