#defines如何在objective-c中工作? 我在C/C++中有一个背景,现在正在尝试拾取objecive-c。 #define在objective-c中似乎不起作用,就像它们在c和C++中工作的方式一样,编译器只是将所有对定义的引用替换为它们应该表示的内容。#defines in objective-c
当我尝试在objective-c中使用#defines时,他们只能有时工作。就像我做这样的事情一样;
#define NUMBER 5
int myArray[NUMBER];
我得到编译器错误,说有一个方括号丢失,如果我使用这条线,而不是它工作正常;
int myArray[5];
当然这些都应该是同一件事?
此外,如果我尝试在任何类型的公式中使用#define值,我会得到类似的编译器错误。此代码不会工作;
#define NUMBER 5
float var = NUMBER * 0.2;
这是好的;
float var = 5 * 0.2;
任何人都知道为什么会这样,或者#defines如何通过objective-c编译器进行不同的处理。顺便说一下,我正在使用XCode,只是因为它有所作为。
它的一个大项目#defines在使用是在不同的文件中我想要使用它们的地方,我可能不得不把整个项目找到它。我必须做一些愚蠢的事情,搞砸了。至少现在我知道它的工作方式与C相同,谢谢。 – Tiddly 2010-07-07 18:18:20