[file.native] # 31 Input/output library [[input.output]](./#input.output) ## 31.10 File-based streams [[file.streams]](file.streams#file.native) ### 31.10.2 Native handles [file.native] [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L10953) Several classes described in [[file.streams]](file.streams "31.10 File-based streams") have a member native_handle_type[.](#1.sentence-1) [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L10957) The type native_handle_type represents a platform-specific[*native handle*](#def:handle,native "31.10.2 Native handles [file.native]") to a file[.](#2.sentence-1) It is trivially copyable and models [semiregular](concepts.object#concept:semiregular "18.6 Object concepts [concepts.object]")[.](#2.sentence-2) [*Note [1](#note-1)*: For operating systems based on POSIX,native_handle_type is int[.](#2.sentence-3) For Windows-based operating systems,native_handle_type is HANDLE[.](#2.sentence-4) — *end note*]