0
我正在嘗試在Obj C中的NSData上實現擴展方法。擴展方法調用cpp lib方法。EXC_BAD_ACCESS uint32_t
這裏是CPP方法的方法簽名:
void process(char *result) { }
這裏是擴展方法調用CPP方法:
- (NSData *)PROCESS
{
uint32_t result;
process((char*)&result);
// At this point result shows 2949384954 as the value
NSData *d = [NSData dataWithBytes:&result length:sizeof(result)];
return d;
}
當我使用PROCESS
並分配返回(NSData的*),我得到一個EXC_BAD_ACCESS錯誤。我相信這與指針或引用的不當使用有關,但我無法弄清楚。提前致謝。
記錄結果並將其添加到問題中。十六進制是最好的。當您遇到問題時,請將其分解以確切確定其位置。發佈精確的錯誤消息,複製和過去以及任何堆棧跟蹤。 – zaph
@Zaph是的。抱歉。我來自.net背景。 – a432511
你爲什麼要實現一個類,通常最好只實現一個類的方法。另外按照慣例,方法名稱是以小寫字母開頭的駱駝大小寫,並且類名稱是在Objective-C中以大寫字母開頭的駱駝大小寫。 – zaph