Я маю справу з кодом, написаним не мною. Я маю таке твердження:
// 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.