What is the meaning of these keywords used before variables in a function parameters?
__in
__out
__in_opt
Those are some of the older decoration macro's from Microsoft's SAL Annotations (the newer ones now follow different casing, starting with a capital). These have no real affect on compilation (under VS 2010 they aren't even expanded), they are there for inline API documentation.
__in
: this parameter is an input to the function (read-only, caller initialized).__out
: this parameter contains output from the function when it returns (write-only, caller initialized).__in_opt
: a compound annotation formed from _in
and _opt
, _opt
indications that the parameter is optional and can be set to a default value (generally NULL
).You can get the full explanation here of the older decorations here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With