我创建了一个constants.h文件,用于在我的iOS应用程序中存储一些全局变量。当我尝试访问它并在我的ViewController中追加它时,我会遇到很多错误。
这是我的constant.h文件的样子:
#import <Foundation/Foundation.h>
@interface constants
#define projectURL @"http://website.com/projects";
@end
然后在我的视图控制器中,我导入顶部的常量文件:
#include "constants.h"
但是当我尝试使用以下内容记录网址时:
NSLog(@"%@", projectURL);
我收到错误:
Expected ')'
最终,我想做的事情是这样的:
NSString *newProjecURLString = [projectURL stringByAppendingFormat: @"/new?auth_token=%@", auth_token];
但为此,我收到错误:
Extraneous ')' before ';'
答案 0 :(得分:4)
这是因为你的#define
最后有一个;
,所以你要结束你的行,然后添加);
这是编译器所看到的:
NSLog(@"%@", @"http://website.com/projects";);
答案 1 :(得分:1)
#define projectURL @"http://website.com/projects";
只需在编译前替换文本。
在编译代码之前 - 我们调用precompile
clang
将使用projectURL
@"http://website.com/projects";
因此NSLog(@"%@", projectURL);
将成为NSLog(@"%@", @"http://website.com/projects";);