我正在关注http://gabriel.github.com/gh-unit/docs/appledoc_include/guide_testing.html的教程。问题是我的项目使用ARC而GHUnit没有。我管理过以前的错误,但现在我应该做桥接演员,我从来没用过,而且我迷路了。
NSString *string1 = @"a string";
GHAssertNotNULL(string1, nil); //error here
错误描述:将Objective-C指针类型'NSString *'隐式转换为C指针类型'const void *'需要桥接转换。
欢迎任何帮助:)
答案 0 :(得分:11)
由于您要比较NSString,因此应使用GHAssertNotNil检查。有关详细信息,请参阅NULL vs nil in Objective-C。
所以你的例子应该是:
NSString *string1 = @"a string";
GHAssertNotNil(string1, nil);
我在使用GHUnit的ARC项目中也注意到GHUnit main.m文件需要
-fno-objc-arc
链接器标志,如前所述。
答案 1 :(得分:1)
您可以通过进入,从项目中仅从自动引用(ARC)中排除GHUnit文件 构建阶段 - >编译来源
然后双击GHUnit中的文件,将出现一个框,将其粘贴到其中
-fno-objc-arc
这将从自动引用(ARC)中排除GHUnit中的文件。