我有這個類:不兼容的指針t型
@interface G2Matrix : NSObject
...
- (id) initWithArray:(float *)val;
...
@end
這條線之下給我一個警告說,第一個參數方法initWithArray有不兼容的指針類型:
float m[16];
...
G2Matrix* matrix = [[[G2Matrix alloc] initWithArray:m] autorelease];
如果我將方法名稱更改爲像initWithArray1這樣的警告消失。我知道基礎類中的一些對象有一個名稱相同的方法,但是我從NSObject派生,它沒有這個方法。是什麼賦予了?
附加信息 - 我從G2Matrix類中的其他init方法調用相同的initWithArray方法,但是在那裏我看不到警告。
[This answer](http://stackoverflow.com/questions/3671097/why-is-this-pointer-type-incompatible/3671255#3671255)解釋了發生了什麼事以及如何避免警告。 – Anna 2011-02-25 04:12:20
是的,這甚至是與我在那裏的答案一樣導致問題的方法。 – Chuck 2011-02-25 04:28:17