+(std::string)somefunc{
__block NSString *vals = nil;
[[Something somecall] completion:^(some params){vals=@"yay"}];
return std::string([vals UTF8String]);
}
此函数调用将引发错误“-[__ NSMallocBlock__ UTF8String]:无法识别的选择器已发送到实例0x ------”
基于我过去转换NSString的方式,我假设这与将NSString声明为__block以便在[]中对其进行修改有关。但是我在任何地方都找不到答案。
转换它的“最佳”方法是什么?