Junior — Middle
რა განსხვავებაა Nil და Null-ის შორის პროგრამირების კონტექსტში?
sobes.tech AI
პასუხი AI-სგან
ප්රෝග්රාමීකරණ සන්දර්භයේ, විශේෂයෙන් iOS සහ Objective-C හි, Nil සහ Null වෙනස් අර්ථයන් ඇත:
-
Nil: Objective-C වස්තුවකට අයත් නියමිත (null pointer) සංකේතය. වස්තුවක් නොමැති බව පෙන්වීමට භාවිතා වේ (උදාහරණයක් ලෙස,
NSObject *obj = Nil;). -
NULL: C ව්යුහයන් හෝ මූලික වර්ග සඳහා නියමිත (null pointer) සංකේතය (උදාහරණයක් ලෙස,
int *ptr = NULL;). -
NSNull: Foundation හි විශේෂිත වස්තුවක් වන අතර, එකතුවල null අගය නියෝජනය කිරීමට භාවිතා වේ (උදාහරණයක් ලෙස,
NSArrayහෝNSDictionaryතුළ), එබැවින් ඒවාnilඅඩංගු නොවිය හැක.
උදාහරණ:
NSObject *obj = Nil; // වස්තුවක් නොමැත
int *ptr = NULL; // ලිපිනයක් නොමැත
NSArray *array = @[[NSNull null]]; // අරේ තුළ null නියෝජනය කරන වස්තුව
ඒ අනුව, Nil — Objective-C වස්තු සඳහා null නියෝජක, NULL — සාමාන්ය නියෝජක සඳහා, සහ NSNull — collection තුළ null නියෝජනය කිරීමට වස්තුවකි.