Objective-C 无法初始化 .mm 扩展名中 CFStringRef 类型的变量
Objective-C Cannot Initialize a Variable of Type CFStringRef in .mm extension
我正在从我的 class 中的 iPhone 联系人导入联系人,然后我将我的文件扩展为 c++(因为我需要使用一个库,要求它是 . mm) 然后发生错误。
代码:CFStringRef phoneNumberRef = ABMultiValueCopyValueAtIndex(phones, j);
错误:cannot initialize a variable of type 'CFStringRef' (aka'const__CFString*') with an rvalue of type CFTypeRef (aka 'const void *')
我迷路了。
我随机在 = 符号后面加上 (CFStringRef)
并修复了错误。似乎 c++ 编译器不希望自动转换。
这成功了:
CFStringRef phoneNumberRef = (CFStringRef) ABMultiValueCopyValueAtIndex(phones, j);
我正在从我的 class 中的 iPhone 联系人导入联系人,然后我将我的文件扩展为 c++(因为我需要使用一个库,要求它是 . mm) 然后发生错误。
代码:CFStringRef phoneNumberRef = ABMultiValueCopyValueAtIndex(phones, j);
错误:cannot initialize a variable of type 'CFStringRef' (aka'const__CFString*') with an rvalue of type CFTypeRef (aka 'const void *')
我迷路了。
我随机在 = 符号后面加上 (CFStringRef)
并修复了错误。似乎 c++ 编译器不希望自动转换。
这成功了:
CFStringRef phoneNumberRef = (CFStringRef) ABMultiValueCopyValueAtIndex(phones, j);