#define __in
#define __out
#define __in_opt
翻译来自stackoverflow。
以上来自于SAL注释语言,(Source-code Annotation Language)。
SAL annotations are useful for two things:
- Static analysis through PREfast (compile with /analyze)
- Human readers can look at the annotations and figure out how a function should be called, and quickly determine the input/output parameters.
_In_Opt_ means you may pass NULL.
inmeans the parameter is supplied by you,outmeans it's returned by the function,optmeans optional (can be 0 — a null pointer or handle)They are hints for automation languages (and for you, I guess).
They are simple #defines that expand to nothing, just to help document the function parameters: whether the caller must provide valid params (_In_) for the function to work; whether the caller can optionally provide default values
(_In_opt_); whether the function will fill in the params on return (_Out_), or whether parameter both passes values in and receives values out (_Inout_).
7562

被折叠的 条评论
为什么被折叠?



