2

私はiOSで初めてsqlite3を使用しています.. sqlite3_open(const char *filename, sqlite3 **ppDb)関数を使用してデータベースへの接続を開く必要がある部分です。私は次のコードスニペットを通過していました:

    int err = sqlite3_open((databasePath ? [databasePath fileSystemRepresentation] : ":memory:"), &db );
    if(err != SQLITE_OK) {
        NSLog(@"error opening!: %d", err);
        return NO;
    }

?と..:memory:ここでdatabasePathNSString、 データベースへのパスを含む でdbあり、 のインスタンスですsqlite3

4

2 に答える 2

2

?:ここで説明されている三項演算子です。

この特定の例では、次のような簡単な書き方です。

int err;
if (databasePath) 
    err = sqlite3_open([databasePath fileSystemRepresentation], &db);
else
    err = sqlite3_open(":memory:", &db);
if (err != SQLITE_OK) {

しかし、あなたが同意すると確信しているように、はるかに簡潔です。

于 2013-08-01T06:24:30.177 に答える