7
我有一個函數,如下所示:傳遞新結構作爲參數
- (void)addBalloon:(COLOR)color:(VELOCITY)velocity:(LOCATION)location
當顏色是枚舉和速度和位置是在一個常數來定義結構頭文件..
速度和位置都存儲兩個整數,x和y。
調用此方法時,我會叫它像這樣:
VELOCITY vel;
LOCATION loc;
vel.x = 100.0;
vel.y = 0.0;
loc.x = 10.0;
loc.y = 10.0;
[self addBalloon:Red:vel:loc];
但對我來說,這似乎雜亂無章。我想直接在一行中創建函數時調用該函數。
這是我的問題:我不確定這是否可以使用#define完成..但如果它不能..是唯一另外可行的選項,創建一個函數返回VELOCITY或LOCATION並接受輸入x和y?
我想這樣做如下:
[self addBalloon:Red:VELOCITY(100.0, 0.0):LOCATION(10.0, 10.0)];
請有之間的文本冒號。看看每個冒號之前你沒有方法名的一部分嗎?沒有在SDK中發生這種情況,所以你不應該自己做。 (http://i.stack.imgur.com/DCu5T.png) –