2012-04-04 41 views
1

我打算在我的項目中使用QuickDailog,我從github here克隆項目。如何修復QuickDialog項目上的此構建錯誤?

我試圖運行示例,但是當我建立這個項目我獲得以下錯誤

file:///QuickDialog/quickdialog/QuickDialogTableView.m: 
error: Semantic Issue: Second argument to 'va_arg' is 
of non-POD type 'QElement *' 

這是導致該錯誤的代碼段。

- (void)reloadCellForElements:(QElement *)firstElement, ... { 
    va_list args; 
    va_start(args, firstElement); 
    NSMutableArray *indexes = [[NSMutableArray alloc] init]; 
    QElement * element = firstElement; 
    while (element != nil) { 
     [indexes addObject:[self indexForElement:element]]; 

     //Below line generates the error 
     element = va_arg(args, QElement *); 
    } 
    [self reloadRowsAtIndexPaths:indexes withRowAnimation:UITableViewRowAnimationNone]; 

    va_end(args); 
} 

任何修復錯誤的建議?

回答

0

你是怎麼稱呼這個方法的?你在打什麼對象?您是否發送空對象終止列表?

我不能重現該問題,但周圍的Googling我發現這一點:

http://builderror.com/article/47/Second-argument-to-vaarg-is-of-non-POD-type

你可以嘗試使用該解決方法,看看它是否解決了問題?

+0

我沒有對代碼做任何修改,我只是在從github下載它之後試圖構建這個項目。我會嘗試一些解決方法... – 2012-04-04 16:26:49

+0

什麼時候發生這種情況,當你編譯它?你使用的是哪個編譯器/ xcode版本? – 2012-04-04 16:28:18

+0

我有Xcode 4.2 Build:4D139並且在啓用ARC的情況下使用'Apple LLVM compiler 3.0' – 2012-04-04 16:42:27

相關問題