Sign in to follow this  
mashrub

function(arg1 arg2)

Recommended Posts

Hi, well I feel a bit stupid asking this because it seems very basical programming but I had never seen until today.
function(arg1 | arg2)
Does the "|" have something to do with the bitwise operator? What does it exactly mean here? Thank you for your help!

Share this post


Link to post
Share on other sites
(arg1 | arg2) is an expression in C or C++. It gets evaluated first and its result is passed to the function. So in this case the function has one parameter.

Both arg1 and arg2 are probably int's. This is all part of the world of bitflags/bitfields. Each bit specifies a boolean value for some option, which saves space when you have a bunch of options to toggle on/off.

Here is an example

IMG_SCALE_POW2 00000000000000000000000000000001
IMG_FILTER_NONE 00000000000000000000000000000010


The bit on the far left specifies if you want to scale the image. The next bit over specifies no filtering to be used. Now you want both of these options and the function takes a single integer whose bits are the options.


IMG_SCALE_POW2 | IMG_FILTER_NONE
00000000000000000000000000000011


The bitwise OR operator combines the two options in the appropriate manner so the integer we pass to the function has both options set.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this