码迷,mamicode.com
首页 > 移动开发 > 详细

iOS中申明变量时前面加extern

时间:2015-10-21 01:46:16      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

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

iOS中申明变量时前面加extern

标签:

原文地址:http://my.oschina.net/u/2488509/blog/519606

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!