. Benim AppDelegate.h dosyasına düğmesinden tıklama sürükle kontrol ettiğindeIBAction'ın gönderen türü neden kimlikli olmalı? Ben "hemen şimdi (Objective-C baskı), Mac OS X için Kakao Programlama" Ben Interface Builder ile bir düğme oluşturmak zaman ve ben şu anda ile çalışıyorum sınıflardan biriyle bağlanmak zorunda olan Kakao öğreniyorum
, Xcode otomatik benim AppDelegate sınıfına düğmeye asılacaktır. Ben "Eylem" seçerseniz böyle bir yöntemi oluşturur:
- (IBAction)onButtonPress:(id)sender {
}
Amaç-C'nin yöntemleri şöyle çalışır:
- (returnType)methodName:(typeOfFirstArgument)firstArgumentName (typeOfSecondeArgument)secondArgumentName
Neden gönderici yerine ilişkin türünü id
kullanmak zorunda NSButton
? Yöntemi bir düğmeyle bağladığımı biliyorum. Sonuç olarak, gönderenin NSButton
türünde bir nesne olmasını beklerim.
dile yeni insanlar için buraya anahtar detay id' jenerik ** işaretçi yerleştirirken **, yani kullanmak zorunda olduğu 'olmasıdır NSButton * 've ** değil **' NSButton' gibi bir şey. –
Uh! Bunu bilmiyordum. İd’ı neden beklediğiniz farklı türde kullanacağınızı gösteren bir örnek verebilir misiniz? – user148013
Bu yöntemi çağırmak için farklı nesneler beklerseniz ve @ user148013 içinde kendilerini geçmeniz gerekiyorsa, 'id' kullanırsınız. Ya da göndereni hiç umursamadıysan. –