プロジェクトに複数のクラスがあります。アプリケーションが起動すると、アプリケーション デリゲートにデータベースが作成されます。別のクラスでこのデータベースにアクセスする必要があるため、この別のクラスでアプリ デリゲートのオブジェクト (Delegate と呼ばれる) を作成しました。通常、データベースを開くには、次のようにします
if(sqlite3_open([Delegate.databasePath UTF8String], &database) == SQLITE_OK)
ただし、この場合、変数データベースはグローバルであり、その親クラスにはありません。この場合、どうすればデータベースを開くことができますか? 私が試してみました
if(sqlite3_open([Delegate.databasePath UTF8String], &Delegate->database) == SQLITE_OK) //error: instance variable database is protected
と
if (sqlite3_open([Delegate.databasePath UTF8String], &Delegate.database) == SQLITE_OK) //エラー: プロパティ式のアドレスが要求されました
しかし、これらのどれも機能しません。