AFNETWORKINGビルドエラー:「匿名クラスの宣言は定義でなければなりません」
-
29-10-2019 - |
質問
AFNETWORKINGと起動して、悲しい偏差ASIHTTPREQUESTを交換しています。人々はこの新しい「AFNETWORKING」を愛しているようですが、プロジェクトには構築されず、なぜ理解できません。File Class class = NSClassFromString(className);
のHTTPRequestOperationWithRequest:success:failure
のAFHTTPClient.m
で始動してビルドエラーを取得しています。
エラーは「匿名クラスの宣言は定義でなければならない」と依頼していますが、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];
}
}
.
編集:以下の答えに解決しました。パッチファイルここ
編集2:これらの変更は最新のAfnetworkingに引っ張られているので、将来誰もがこれを見つけています。また、未来はどうですか?こんにちは未来。
解決
私は変数 "クラス"を他のものに名前変更することによって、コンパイラエラーを回避することができました。残念ながら、私はなぜ私が問題を抱えていたのかを理解することができませんでした。これは手がかりです:未知のコンパイラフラグを持つ大きな既存のプロジェクトにAFNetworkingを追加したときに私に起こりました。新鮮な新しいプロジェクトにAFNETWORKINGを追加したとき、私は問題をすべて問題に刻みませんでした。
所属していません StackOverflow