Re: BOOL parameter passed as nil object
Re: BOOL parameter passed as nil object
- Subject: Re: BOOL parameter passed as nil object
- From: Greg Parker <email@hidden>
- Date: Tue, 19 Apr 2016 10:32:45 -0700
> On Apr 18, 2016, at 6:56 PM, Carl Hoefs <email@hidden> wrote:
>
> Suppose I have an object with a declared method signature:
> -(void)myMethod:(BOOL)a_bool;
>
> Q1: If I invoke it like this:
> [self performSelector:@selector(myMethod:) withObject:nil]; // nil obj
> Will argument a_bool end up with a 0 value assigned to it?
Don't do that. The behavior is undefined. It probably happens to work on all current architectures.
> Q2: But if I invoke it like this:
> [self performSelector:@selector(myMethod:) withObject:someObj]; // valid obj
> Will argument a_bool end up with a 1 value assigned to it?
Don't do that. The behavior is undefined. It will certainly fail on some current architectures at least some of the time.
You should not use -performSelector:withObject: to call methods that use non-object parameters.
--
Greg Parker email@hidden Runtime Wrangler
_______________________________________________
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