私が書いていないコードを扱っています。私はこの声明を持っています:
// p is type of std::unique_ptr<uint8_t[]>
if (p < 0) { /* throw an exception */ }
それではp < 0
、この文脈ではどういう意味ですか?
上のドキュメントページ、私は私の場合はあると信じて16) y < nullptr
いる、0
ですnullptr
。
しかし、それは何をしますか?
p==-1
では無効なハンドルです。2^64
ばかばかしいほど膨大な数なので、賢明なものp
は常にポジティブです。したがってp<0
、WINAPIの無効なハンドルをチェックします。これは良いコードではありません。
uint8_t*
(またはの配列uint8_t
)である必要がありますか?そうだと思いvoid*
ませんか?
void*
それらがマクロHANDLE_PTRまたは基本的にlong*
iircである何かを持っていないのではありません。