我有一个define变量是这样的字符串
#define kyouTubeLink @"<iframe width='%d' height='%d' src='http://www.youtube.com/embed/%@?showinfo=0&modestbranding=1&rel=0&showsearch=0' frameborder='0' scrolling='0' allowfullscreen></iframe>";
所以如何在另一个文件中调用此变量。提前谢谢
答案 0 :(得分:1)
您无法在另一个翻译单元中引用#define
- d的变量。您可以将定义放在头文件中,并将#include
放在需要定义的任何翻译单元中。
因为定义是C字符串文字,所以最好为它定义一个常量extern
变量,将声明放在标题中,在 one 中定义它你的翻译单位,并在其他地方使用:
公共标题(例如,&#34; YouTubeShared.h&#34;):
extern const NSString* kyouTubeLink;
第一个翻译单元(例如&#34; AppDelegate.m&#34;或者什么是更适合保存常量的文件)
#include "YouTubeShared.h"
const NSString *kyouTubeLink = @"<iframe width='%d' height='%d' src='http://www.youtube.com/embed/%@?showinfo=0&modestbranding=1&rel=0&showsearch=0' frameborder='0' scrolling='0' allowfullscreen></iframe>";
... // More things go here
第二个翻译单位:
#include "YouTubeShared.h"
... // More things go here
NSString *res = [NSString stringWithFormat:kyouTubeLink, 123, 456];