A类中
a.m这样定义了一个a类的全局变量
#import "a.h" NSString* hello=@"helloworld"; @implementation a // NSString* hello=@"helloworld";
两个地方都行,反正就是定义了这么一个类的全局外部可访问的变量
在B类中
b.m里面这样定义
#import "a.h" #import "b.h" extern NSString* hello; @implementation b
然后你就可以在B类中使用hello,而且hello的值直接就是@"helloworld";
在做项目的时候,我们可以定义一个Config.h
#ifndef cfg #define cfg NSString *url = @"www.baidu.com"; #endif
在Appdelegate.m中初始化url
#import "AppDelegate.h"
#import "Config.h"
extern NSString* url;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
NSLog(@"%@",url); //输出www.baidu.com
url = @"www.google.com"; //改变hello的值
return YES;
}
然后其他类同Appdelegate一样extern hello
原文:http://my.oschina.net/u/2488509/blog/519606