1

SQLメソッドを使用してファイルを作成しましたが、このファイルは非常に大きくなっています。ベストプラクティスと実装を簡素化するために分割したいと思います。だから、カテゴリ。

xCodeで新しいobjective-cカテゴリファイル->DBAccess+ Generals.h(.m)を作成しました。

.h:

#import "DBAccess.h"

@interface DBAccess (Generals)

-(void)newMeth;

@end

.m

#import "DBAccess+Generals.h"
#import "DBAccess.h"

@implementation DBAccess (Generals)

-(void)newMeth
{
  NSLog(@"New Meth");
}

@end

DBAccess.h内

#import <Foundation/Foundation.h>
#import <sqlite3.h>
#import "DBAccess+Generals.h"



@interface DBAccess : NSObject
{
   NSString *databaseName;
}

@property(nonatomic,strong)NSString *databaseName;

DBAccess.m

#import "DBAccess.h"
#import "DBAccess+Generals.h"

@implementation DBAccess
@synthesize databaseName;
sqlite3* database=nil;

-(id)init
{
  if ((self=[super init])) 
  {
    //[self initializeDataBase];
    databaseName=@"world_coins.db";
    //firstVerDB=@"ac_ch_ver.1.0.db";

  }
  return self;
}

//Tones of methods

@end

コードはOKのようです。「DBAccessのインターフェース実装が見つかりません」というエラーが発生します。私はグーグルでスタックオーバーフローしましたが、説明されている問題は私の場合ではありません。

何か助けはありますか?前もって感謝します。

4

1 に答える 1

3

問題は周期的なインポートです

  • #import "DBAccess+Generals.h"DBAccess.h
  • #import "DBAccess.h"DBAccess+Generals.h

最初のものを削除すると、コードがコンパイルされます。

于 2012-08-27T17:13:32.940 に答える