0

嘿,我有这段代码:

-(void)populateTexts{
    self.texts = [[NSMutableArray alloc] init];

    FMDatabase *db = [[FMDBDataAccess alloc] init];

    self.texts = [db getTexts];
}

我不断收到错误消息:TextMsgViewController.m:41:17: Incompatible pointer types initializing 'FMDatabase *__strong' with an expression of type 'FMDBDataAccess *'

TextMsgViewController.m:43:19:“FMDatabase”没有可见的@interface 声明选择器“getTexts”

4

1 回答 1

0

错误:

TextMsgViewController.m:41:17:使用“FMDBDataAccess *”类型的表达式初始化“FMDatabase *__strong”的不兼容指针类型

意思是它所说的。[[FMDBDataAccess alloc] init]创建一个类型的对象FMDBDataAccess。但是你的变量db被声明为FMDatabase *db它期望指向一个类型的对象FMDatabaseFMDatabase并且FMDBDataAccess是不同的类型。

下一个错误:

“FMDatabase”没有可见的@interface 声明选择器“getTexts”

同样简单。编译器会查看 的接口,FMDatabase因为那是db. 该类没有名为getTexts. 因此编译器无法确定返回类型,也无法验证您的代码。

你的意思db是类型FMDBDataAccess

于 2013-08-25T20:49:32.347 回答