如何将关键字#define的常量值作为参数传递给方法?
问题描述:
我已经在我的一些文件中定义了一个常量,并将其添加到了我想要使用它的文件中,如下所示。如何将关键字#define的常量值作为参数传递给方法?
#define myMapID 1
但问题是,当我传递的值的方法作为参数,编译器会发出警告,而且是必须做的,但我怎样才能避免警告?
-(void) methodName :(int) mapId
{
//printID
}
[self methodName :myMapID];
答
奇怪的是,它会给你一个警告。请尝试:
#define myMapID (int) 1
也许?
答
只需使用一个(全球)静态/恒INT,比的#define更清晰,不会给警告。
你会得到什么警告? – 2011-01-29 23:00:32
通过使用#define我猜数据类型不清楚的编译器或不知道什么,所以它给出的警告,它应该根据我传递给它的方法的参数。在编译器语言中,警告就像“myTestAppDelegate”可能不会响应'-methodName:mapID“ – yunas 2011-01-29 23:27:50