30 Input/output library [input.output]

30.10 File systems [filesystems]

30.10.34 Filesystem operation functions [fs.op.funcs]

30.10.34.34 Space [fs.op.space]

space_info space(const path& p); space_info space(const path& p, error_code& ec) noexcept;

Returns: Тип объекта space_­info. Значение space_­info объекта определяется как если при использовании POSIX statvfs для получения POSIX struct statvfs, а затем умножения его f_­blocks, f_­bfreeи f_­bavail членов его f_­frsize членами, и присвоения результатов к capacity, freeи available членов соответственно. Любые элементы, для которых невозможно определить значение, должны быть установлены в static_­cast<uintmax_­t>(-1). Для подписи с аргументом ecвсе члены устанавливаются в значение, static_­cast<uintmax_­t>(-1) если возникает ошибка.

Throws: Как указано в [fs.err.report].

Remarks: Значение члена space_­info​::​available зависит от операционной системы. [ Note: available может быть меньше чем free. ] end note