2012-01-17 9 views
0

私は悲しいことに無効なASIHTTPRequestを置き換えるためにAFNetworkingを開始しています。人々はこの新しい "AFNetworking"を愛しているようですが、それは私のプロジェクトに組み込まれていないため、なぜその理由が分かりません。 Class class = NSClassFromString(className);から始まるビルドエラーがHTTPRequestOperationWithRequest:success:failureのファイルAFHTTPClient.mにあります。AFNetworkingビルドエラー: "匿名クラスの宣言は定義でなければなりません"

エラーは「匿名クラスの宣言は定義でなければなりません」と私はGoogleに尋ねましたが、何も得ていません。助けて?

コンテキスト:

- (AFHTTPRequestOperation *)HTTPRequestOperationWithRequest:(NSURLRequest *)urlRequest 
                success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success 
                failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure 
{ 
    AFHTTPRequestOperation *operation = nil; 
    NSString *className = nil; 
    NSEnumerator *enumerator = [self.registeredHTTPOperationClassNames reverseObjectEnumerator]; 
    while (!operation && (className = [enumerator nextObject])) { 
     Class class = NSClassFromString(className); 
     if (class && [class canProcessRequest:urlRequest]) { 
      operation = [[(AFHTTPRequestOperation *)[class alloc] initWithRequest:urlRequest] autorelease]; 
     } 
    } 

EDIT:以下の答えごとに解決しました。パッチファイルhere

EDIT 2:これらの変更は、将来的にこれを発見誰ので、最新のAFNetworkingに引き込まれていますちょうど新鮮なバージョンをダウンロードして、あなたはすべてのセットです。また、未来はどうですか?こんにちは。

答えて

3

変数 "class"の名前を変更してコンパイルエラーを回避することができました。残念ながら、私はなぜ問題を抱えているのか理解できませんでした。ここで手掛かりがあります:AFNetworkingを未知のコンパイラフラグを持つ大きな既存のプロジェクトに追加したときに起こったことが私に起こりました。新しいプロジェクトにAFNetworkingを追加したとき、私は全く問題にはならなかった。

+0

「edit for patch」を参照してください。 – buildsucceeded

関連する問題