Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
次のSAL注釈の違いは何ですか?
void foo(__deref_out_opt PSTR* bar); void foo(__deref_opt_out PSTR* bar);
out パラメーターは、呼び出し元が文字列へのPSTR*ポインターを受け取るバッファーを渡すことを意味します。
PSTR*
__deref_out_opt では、文字列はオプションです (関数は、呼び出し元が提供するバッファーに NULL を入れます)。
__deref_opt_out では、バッファーはオプションです (呼び出し元は NULL を渡して、出力値に関心がないことを示します)。
おそらく、これらの概念を組み合わせることが可能であり、__deref_opt_out_optそのための修飾子が必要です。
__deref_opt_out_opt