मैं NSDictionary प्रारंभ करने में कोशिश कर रहा हूँ संभालती है, लेकिन यह मुझे निम्न त्रुटि देता है:करता NSDictionary initWithObjectsAndKeys शून्य/शून्य वस्तुओं और NSString के अलावा अन्य वस्तुओं
Program received signal: “EXC_BAD_ACCESS”.
यहाँ है मेरी समस्या पैदा करने वाले कोड [Quiz.m]:
@implementation Quiz
@synthesize question;
@synthesize correctAnswer;
@synthesize userAnswer;
@synthesize questionId;
-(NSString*) getAsJsonString
{
// Following line gives the error
NSDictionary *qDictionary=[[NSDictionary alloc] initWithObjectsAndKeys:question,@"questionText",questionId,@"questionId",userAnswer,@"userAnswer",correctAnswer,@"correctAnswer",nil];
..............
.........
............
return jsonString;
}
@end
और यहाँ संदर्भ के लिए Quiz.h फ़ाइल है
@interface Quiz : NSObject {
@public
NSString * question;
BOOL correctAnswer;
BOOL userAnswer;
NSInteger questionId;
}
@property (nonatomic,retain) NSString * question;
@property (nonatomic, assign) NSInteger questionId;
@property (nonatomic,assign) BOOL correctAnswer;
@property (nonatomic,assign) BOOL userAnswer;
- (NSString*) getAsJsonString;
@end
मैं इसे कैसे ठीक करना चाहिए, कृपया मेरी मदद करो, मैं उद्देश्य सी के लिए नया हूँ और यह मुझे पागल कर रहा है। क्या NSDictionary initWithObjectsAndKeys स्ट्रिंग और शून्य ऑब्जेक्ट्स के अलावा अन्य ऑब्जेक्ट्स को संभालता है?
धन्यवाद, यह मेरी समस्या का समाधान करता है। +1 –
लेकिन मुझे अब एक और समस्या का सामना करना पड़ रहा है, जब मैं करता हूं: 'userAnswer = [NSNull null]' यह हमेशा मूल्य मानता है? मैं नूल वैल्यू के साथ बूल कैसे शुरू कर सकता हूं? –
अगर जवाब में मदद मिली तो उसे स्वीकार करें। बूलियन चर 'शून्य' नहीं हो सकते हैं, वे या तो 'हाँ' (गैर-शून्य) या 'NO' (' 0 = NULL == NO') हैं। आपके पास 'userNswer = [NSNull null] == YES' है [NSNull null]' एक ऑब्जेक्ट है, और आप इस ऑब्जेक्ट के पॉइंटर के साथ 'userAnswer' सेट करते हैं, और पॉइंटर स्वयं शून्य नहीं है, इसलिए यह 'हाँ' है । स्केलर मूल्यों के साथ वस्तुओं को भ्रमित मत करो। –