Objective-c – problem with declare a global variable in objective c

objective-c

i have a global variable in 1 of the class like
classA.h

const NSString *global;

classA.m

global=[array objectAtIndex:0];//a array store sort of string

and in another class i want to call this global variable

classB.m

import "class.h"

NSLog(@"%@",global);

but it doesnt work,i know when i jus assigned a value directly to my global variable instead of from another variable it will work but can somebody show me how to make it achieve from a array?

Best Solution

In the header, use:

extern const NSString *global;

and in the implementation (.m):

const NSString *global;

The "extern" reference tells all including files that the variable exists, but it's declared elsewhere. Finally, in your implementation file, you put the actual declaration.