我的常量文件中的全局变量

时间:2013-12-25 14:02:53

标签: ios objective-c macros global

直到现在,如果我需要访问我的应用程序中的全局变量,我只需添加

#define PATH [NSString stringWithFormat:@"www.url.com"]

到我的Constants.h文件。

我需要从服务器获取PATH值。 如何将我从服务器获取的值分配给上面的宏\字符串,并且仍然可以在我的应用程序中的任何位置使用变量PATH? (不指定类,如class.PATH

等属性用法

这有效:

#import <Foundation/Foundation.h>

NSString* PATH;

@interface Constants : NSObject
+(void)getPathFromServer;

@end  

PATH可以从我的应用中的任何位置访问,但我不确定是否应该这样做。

2 个答案:

答案 0 :(得分:0)

据我所知,到目前为止,您需要定义一个动态更改其网址内容的宏。 如果我没错,您可能需要Vararg Macros来获取变量。

#define PATH(...) [NSString stringWithFormat:@"%@",__VA_ARGS__]

答案 1 :(得分:0)

您可以使用extern关键字 示例:

//Header file
extern NSString * const path;

// .m file under implementation
NSString * const Ppath = [NSString stringWithFormat:@"www.url.com"];

看看这些 Constants in Objective C
#define vs const in Objective-C