7

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 *'への暗黙の変換には、ブリッジキャストが必要です。

どんな助けでも歓迎します:)

4

2 に答える 2

11

NSStringを比較しているので、GHAssertNotNilチェックを使用する必要があります。詳細については、Objective-CのNULLとnilを参照してください。

したがって、例は次のようになります。

NSString *string1 = @"a string";
GHAssertNotNil(string1, nil);

また、GHUnitを使用するARCプロジェクトで、GHUnitmain.mファイルに

-fno-objc-arc

以前に提案されたリンカーフラグ。

于 2012-04-20T15:47:00.393 に答える
1

ビルドフェーズ->ソースのコンパイルに入ると、プロジェクトから自動参照(ARC)からGHUnitファイルのみを除外できます。

次に、GHUnitのファイルをダブルクリックすると、ボックスが表示され、それに続いて貼り付けます

-fno-objc-arc

これにより、GHUnitのファイルが自動参照(ARC)から除外されます。

于 2012-04-03T10:48:07.637 に答える