Re: Problems with ScriptingBridge and iTunes
Re: Problems with ScriptingBridge and iTunes
- Subject: Re: Problems with ScriptingBridge and iTunes
- From: Jens Alfke <email@hidden>
- Date: Sun, 2 Mar 2008 22:32:30 -0800
On 2 Mar '08, at 4:54 AM, Steven Degutis wrote:
I think it's clear why [currentTrack
isKindOfClass:[iTunesFileTrack class]] evaluates to true: in the
previous line, you defined it as such, like this:
iTunesTrack *currentTrack = [iTunes currentTrack];
So obviously it is an iTunesTrack!
No. It could be an instance of a subclass of iTunesTrack, such as (in
this case) iTunesFileTrack. (That's true of any object-oriented
language.)
Try this:
iTunesFileTrack *currentTrack = [iTunesFileTrack currentTrack];
That won't even compile. You can't assign an iTunesTrack* to an
iTunesFileTrack*.
Moreover, since Obj-C is a dynamic language, it's more important what
the class of the object is at runtime, than what type the pointers are
defined as at compile time. You can change the type declarations, but
it won't affect what actual objects you get back at runtime.
—Jens
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden