8

古いiOSコードをいくつか開いて、それをビルドしようとすると、次のようなコードに対して「未使用のパラメーター」エラーが発生します。

- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar {
    NSLog(@"Search Bar isn't used in this function");
}

これについて、Objective-Cコンパイラがエラー(警告ではない)を吐き出すのを見たのはこれが初めてです。多くのiOS呼び出しは必ずしも受け渡し引数を使用しないので(例は多くのコールバックです)、これを取り除くのに助けが必要です。

4

1 に答える 1

13

解決策#1)

Xcodeプロジェクトの「ビルド設定」には、「未使用のパラメーター」のパラメーターがあります。

YESからにリセットしNOます。 未使用のパラメータの警告

解決策#2(Xcode 4で利用可能):

Xcode 4.3.2以降では、を使用します__unused

(以下のTim Bodeitのコメントに感謝します)

解決策#3)

コード#pragma unused (searchBar)を、できれば関数が宣言されている実装の行のすぐ下に配置します。

IE

- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar {
    #pragma unused (searchBar)
    NSLog(@"Search Bar isn't used in this function");
}
于 2012-04-04T17:08:17.157 に答える